728x90
반응형
재귀 함수는 정의 단계에서 자신을 재 참조하는 함수를 뜻합니다.
오늘은 재귀함수를 이용하여, 입력한 정수의 합을 구해보려고 합니다.
#include <stdio.h>
int Sum(int num) {
if (num <= 1)
{
return num;
}
else
{
return num + Sum(num-1);
}
}
int main(void) {
int num;
scanf("%d", &num);
printf("%d", Sum(num));
return 0;
}
Sum 함수가 제일 처음 실행될 땐,
else 절이 수행됩니다.
예를 들어 10이 입력됬다면,
10 + Sum(9)이 실행되고, Sum(9)에 대해서 코드가 다시 실행됩니다.
이걸 재귀적으로 계속 반복하다가, 입력된 값이 1이 된다면 그때부터 계산된 값을 return 시켜 줍니다.
그림으로 보면 더 직관적으로 이해할 수 있습니다. !
반응형
'C Programming' 카테고리의 다른 글
C언어 피보나치 수열 출력하기 - 공부하는 도비 (0) | 2022.10.31 |
---|---|
C언어 재귀 함수를 사용한 피보나치 수열 - 공부하는 도비 (0) | 2022.10.28 |
C언어 버블 정렬 (오름차순 정렬) - 공부하는 도비 (0) | 2022.10.28 |
C언어 포인터를 이용하여 배열의 모든 원소 역순 출력 함수 - 공부하는 도비 (0) | 2022.10.28 |
양의 정수 값을 입력 받아 입력한 정수까지의 소수를 구하는 함수 작성 - 공부하는 도비 (0) | 2022.10.28 |