재귀 함수는 함수 내부에서 자기 자신을 재귀적으로 호출하는 함수이다. 예)
void hello(int n){
if (0 < n){
printf("hello");
hello(n-1);
}else{
return;
}
}
이 함수에서는 n이 0이 될때 까지 재귀적으로 hello를 호출한다.
재귀 함수의 대표적인 예에는 팩토리얼과 피보나치 수열이 있다.
https://swchung09.tistory.com/38
27433번, 팩토리얼 2
https://www.acmicpc.net/problem/27433이 문제는 정수 N을 줄때, N 팩토리얼을 출력하는 문제이다.팩토리얼은 1부터 N까지의 곱을 의미한다. 따라서 5 팩토리얼이면, 5*4*3*2*1=120이다.이 코드를 짜기 전, C에서
blog.aiswstudio.com
https://swchung09.tistory.com/39
10870번, 피보나치 수 5
https://www.acmicpc.net/problem/10870이 문제는 n을 주면, n번째 피보나치 수를 구하는 문제이다.우선 이전에 풀었던 문제인 팩토리얼 2를 응용해서 풀거기 때문에, unsigned long int는 그대로 사용하겠다.우
blog.aiswstudio.com
다음은 C언어 계열에서 빠질 수 없는 개념, 포인터이다.
포인터는 어떤 변수의 주소를 저장하는 변수이다.
포인터 기호는 *과 &가 있다. *는 포인터 변수가 가르키는 주소의 값을 가져오는 기호이고, scanf에서 자주 보이는 &는 변수의 주소값을 가져오는 기호이다. 예)
int test = 0;
int* test_p = &test;
배열은 배열의 첫 번째 값의 주소를 가르키기 때문에, 포인터 변수를 통해 배열을 사용할 수 있다.
따라서 arr = &arr = &arr[0]이다.
'C, C++' 카테고리의 다른 글
| 동적 할당, 구조체 (0) | 2025.04.15 |
|---|---|
| 배열, 변수(전역, 지역), 함수 (0) | 2025.04.08 |
| C 기본 문법 (0) | 2025.04.06 |
| 포멧 문자 (0) | 2025.04.02 |