#include<stdio.h>
int main()
{
int a1, a2, a3, n, i;
//根据斐波那契数列f(n) = f(n-1) + f(n-2),定义a1, a2, a3分别代替f(n),f(n-1),f(n-2)
//i为循环变量
scanf("%d", &n);//键盘读入n(第n项)
if (n <= 2)//前两个是1,项数小于3,单独表示
printf("1");
else//当数列超过2项
{
a1 = 1, a2 = 1;//第一,二项都是1
for (i = 3; i <= n; i++)//从第三项开始计算
{
a3 = a1 + a2;//本项等于前两项之和
a1 = a2;//往前递推项数
a2 = a3;//同样递推
}
printf("%d", a3);//输出本项数值
}
return 0;//程序正常退出
10-07
8077
05-30
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交