递归和非递归的实现:
#include<stdio.h>
int Fiber(int n)
{
if(n==0||n==1)return 1;
return Fiber(n-1)+Fiber(n-2);
}
int Fiber2(int n)
{
int a=1,b=1;
int i=2;
while(i++<=n)
{
a=a+b;
b=a-b;
}
return a;
}
void main(void)
{
int n;
printf("Please input the number:\n");
scanf("%d",&n);
printf("The result is %d",Fiber2(n));
}