斐波那契数列又称黄金分割数列,指的是这样的一个数列:1、1、2、3、5、8、13、21、34……此数列从第3项开始,每一项都等于前两项之和。
那么,如果要计算第n项,必须要知道第(n-2)项和第(n-1)项的值,他两之和就是n的值。下面我将利用两种方法来实现
1、利用递归实现斐波那契数列
#include<stdio.h>
int Fibon(int n)
{
if(n == 1||n == 2)
return 1;
return Fibon(n-2)+Fibon(n-1);
}
int main()
{
printf("%d\n",Fibon(10));
}
输出结果
2、利用循环实现斐波那契数列
#include<stdio.h>
int Fibon_for(int n)
{
int f1 = 1;
int f2 = 1;
int f3 = 1;
for(int i=3;i<=n;i++)
{
f3 = f1+f2;
f1 = f2;
f2 = f3;
}
return f3;
}
int main()
{
printf("%d\n",Fibon_for(10));
}
输出结果