본문 바로가기

C_study

[C] 코딩도장 67 : 함수에서 재귀호출 사용하기

67.6 심사문제: 재귀호출로 피보나치 수 구하기

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int fib(int num1)
{
    if (num1 == 0 || num1 == 1) // 피보나치 수의 시작에 도달하면 값 반환
    return num1;

    else
        return fib(num1-1) + fib(num1-2);

}

int main()
{
    int num1;

    scanf("%d", &num1);

    printf("%d\n", fib(num1));

    return 0;
}

67.7 심사문제: 재귀호출로 1부터 n까지 합 구하기

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int sum(int n)
{
    if (n == 1)
        return 1;

    return n + sum(n-1);
}

int main()
{
    int n = 0;

    scanf("%d", &n);

    printf("%d\n", sum(n));

    return 0;
}