seungjun.dev

C언어 Express 9장 #05

1부터 n까지의 합(1+2+3+4+...+n)을 Recursion 활용해 구하는 문제

1부터 n까지의 합(1+2+3+4+...+n)을 Recursion 활용해 구하는 문제

#include <stdio.h>

int sum(int n) {
    if(n != 0) {
        return n + sum(n-1);
    }
    else {
        return n;
    }
}

int main() {
    int num;
    printf("정수를 입력하시오: ");
    scanf("%d", &num);

    printf("1부터 %d까지의 합 = %d", num, sum(num));
}

n = 10일 때의 아이디어 스케치 10이 처음 들어가면 10 + sum(9)를 반환 sum(9)에 저 많은게 다 들어가고, 결국 최종 반환값은 55