问题描述:
一列数:从1开始,前两项为1,从第三项开始每一项等于前两项之和。
例:1 1 2 3 5 8 13
推导出公式则为:
n<3时
f(n)=1;
n>2时
f(n)=f(n-1)+f(n-2)
实现代码如下:
#include <stdio.h>
int Fibon(int n)
{
int f1=1;
int f2=1;
int f3=1;
for(int i=2;i<n;i++)
{
f3=f1+f2;
f1=f2;
f2=f3;
}
return f3;
}
int main()
{
for(int i=1;i<10;i++)
{
printf("%d\n",Fibon(i));
}
return 0;
}