输出斐波那契数列第n项(假设n<1000)。斐波那契数列:0,1,1,2,3,5,8,13……
输入格式:
一个正整数n,表示斐波那契数列第n项。
输出格式:
斐波那契数列第n项的值
输入样例:
1
输出样例:
0
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//迭代实现
int Fib(int n)
{
int a = 1;
int b = 1;
int c = 0;
while (n >= 3)
{
c = a + b;
a = b;
b = c;
n--;
}
return c;//n=1 n=2时返回c
}
//递归实现
int Fib(int x)
{
if (x>2)
{
return Fib(x-1) + Fib(x-2);
}
else if(x <=2 && x > 0)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
int n = 0;
scanf("%d", &n);
n = n -1;
printf("%d", Fib(n));
return 0;
}