编辑代码

#include<stdio.h>
int Fib(int n)
{
    int f0=0,f1=1,f,i;
    if(n==0||n==1)
    {
        return n;
    }
    for(i=2;i<=n;i++)
    {
        f=f0+f1;       //由前两步结果推出当前结果
        f0=f1;         //原前一步当作下一次的前两步
        f1=f;          //当前结果当作下一次的前一步
    }                  //在进行向前传递时,要注意传递的时序
    return f;
}
void main()
{
    int n=7;
    printf("Fib(%d)=%d\n",n,Fib(n));
}