결과물
코드
복사코드
#include <stdio.h>
int fib1(int n) //순환
{
if (n == 0)
return 0;
if (n == 1)
return 1;
return (fib1(n - 1) + fib1(n - 2));
}
int fib2(int n) //반복
{
if (n == 0)
return 0;
if (n == 1)
return 1;
int pp = 0;
int p = 1;
int result = 0;
for (int i = 2; i <= n; i++) {
result = p + pp;
pp = p;
p = result;
}
return result;
}
void main()
{
while (1)
{
int menu;
printf("\n\n메뉴 1)순환 피보나치 2)반복 피보나치 3) 종료 : ");
scanf("%d", &menu);
if (menu == 3)
{
printf("프로그램 종료\n");
break;
}
switch (menu)
{
case 1:
int num1;
printf("순환 입력 값 : ");
scanf("%d", &num1);
printf("순환 피보나치 값 : %d\n", fib1(num1));
break;
case 2:
int num2;
printf("순환 입력 값 : ");
scanf("%d", &num2);
printf("반복 피보나치 값 : %d\n", fib2(num2));
break;
default:
printf("잘못된 선택 다시 선택하시오.");
}
}
}
'C > C 개발' 카테고리의 다른 글
C언어 하노이의 탑 코드 (0) | 2021.12.25 |
---|---|
C언어 거듭제곱 순환, 반복 코드 (0) | 2021.12.21 |
C언어 팩토리얼 순환, 반복 코드 (0) | 2021.12.20 |
C언어 게임 아이템 강화 코드 (0) | 2021.12.17 |
C언어 Up & Down 게임 코드 (0) | 2021.12.16 |