递归求第n个斐波那契数
#include<stdio.h>
int Fib(int n)
{
if(n<=2)
return 1;
else
return Fib(n-1)+Fib(n-2);
}
//TDD-测试驱动开发:先写主函数,后写其他函数
int main()
{
int n=0;
int ret=0;
scanf("%d",&n);
ret=Fib(n);
printf("%d\n",ret);
return 0;
}
//50
//49 48
//48 47 47 46
//47 46 46 45 46 45 45 44
//...............
//重复次数过多
迭代求第n个斐波那契数
#include<stdio.h>
int Fib(int n)
{
int a=1,b=1,c=1;
while(n>2)
{
c=a+b;
a=b;
b=c;
n--;
}
return c;
}
//1 1 2 3 5 8 13 21 34 55. . . . . .
//a b c
// a b c
//TDD-测试驱动开发:先写主函数,后写其他函数
int main()
{
int n=0;
int ret=0;
scanf("%d",&n);
ret=Fib(n);
printf("%d\n",ret);
return 0;
}