C(38)
-
C - 재귀함수
재귀함수란 ? 함수 스스로가 자기자신을 호출하는 함수를 칭한다. 재귀함수의 특징으로 자기자신을 호출할 때마다 사용되는 변수들이 스택에 보관되며 return문이 실행 될 때마다 스택에서 복원하여 사용한다. void hello(int count) { if(count == 0) { return; } printf("Hello~ %d \n", count); hello(--count); } int main() { hello(10); return 0; } 출력 결과 Hello~ 10 Hello~ 9 Hello~ 8 Hello~ 7 Hello~ 6 Hello~ 5 Hello~ 4 Hello~ 3 Hello~ 2 Hello~ 1 위 예시와 같이 종료조건을 꼭 설정해주도록 하자! 특정 값을 입력 받아 문자열을 반복하는 재..
2022.03.07 -
C - 함수
함수란? 특정 작업을 수행하는 명령어들의 모음에 이름을 붙인 것 왜 함수를 쓰는가? for(int i = 0; i < 30; i++){ printf("*"); } for(int i = 0; i < 30; i++){ printf("*"); } 위와 같이 비슷하거나 똑같은 코드가 있다. 이것들이 main함수에 있으면 조잡하고 코드를 읽기 복잡할 것이다. 함수를 이용하면 void print_stars(){ for(int i = 0; i < 30; i++){ printf("*\n"); } } int main(void) { print_stars(); print_stars(); } 훨씬 코드가 깔끔해지며 읽기 쉬워진다. 단순히 그 이유 때문에만 쓰는 것은 아니다. 함수는 한번 만들어지면 다른 프로그램에서도 재사용될..
2022.03.07 -
C - 포인터와 배열
int num[3] = {1,2,3}; int *ptr = num; printf("ptr이 가리키는 주소 : %p\n", ptr); printf("ptr+1 이 가리키는 주소 : %p\n", ptr+1); printf("ptr+2 이 가리키는 주소 : %p\n", ptr+2); printf("\n\n"); printf("num[0]이 가리키는 주소 : %p\n", &num[0]); printf("num[1]이 가리키는 주소 : %p\n", &num[1]); printf("num[2]이 가리키는 주소 : %p\n", &num[2]); 출력 결과 ptr이 가리키는 주소 : 0x304c7b9ec ptr+1 이 가리키는 주소 : 0x304c7b9f0 ptr+2 이 가리키는 주소 : 0x304c7b9f4 num[..
2022.03.07 -
간단한 제어문 예제
1. 정수값을 키보드로 입력 받아 그 값이 짝수인지 홀수인지 출력하는 프로그램 int a; printf("Enter the number : "); scanf("%d", &a); printf("##########\n"); if(a%2 == 0){ printf("짝수 입니다\n"); } else { printf("홀수 입니다\n"); } printf("##########\n"); 출력 결과 Enter the number : 7 ########## 홀수 입니다 ########## 2.전압과 저항을 입력 받아 전력을 구하는 프로그램 double voltage, resistor, power; printf("전압 입력 = > "); scanf("%lf", &voltage); if (voltage >= 100.0) ..
2022.03.07 -
C - 전처리기
#define 지시어를 통하여 매크로를 사용할 수 있다. #define ASDF "South Korea" int main() { printf(ASDF); } 출력 결과 South Korea #include 지시어는 지정한 파일에 있는 내용을 현재의 프로그램이 있는 소스파일에 포함시키는 역할을 한다. #include stdio.h 헤더파일을 통해 puts(), scanf(), getch() 등의 함수 등을 사용할 수 있게 되는 것과 같다.
2022.03.07 -
C - getchar() 함수와 gets()함수
scanf 함수 외에도 단일문자를 입력 받는 getchar()함수와 문자열을 입력 받는 gets() 함수에 대하여 알아보자 위의 함수를 사용할땐 항상 stdio.h 헤더 파일을 포함시켜도록 하자. *getchar()함수는 하나의 문자만 입력을 받는다. int a; printf("input a character = "); a = getchar(); printf("문자 %c의 아스키 코드값 -- %d", a, a); 출력 결과 input a character = RA 문자 R의 아스키 코드값 -- 82 RA를 입력 했음에도 첫번째 글자인 R의 아스키코드 값을 출력하는 것을 볼 수 있다. *gets함수의 사용 char pt[30]; printf("문자열 입력 => "); gets(pt); printf("%s ..
2022.03.07