#include<stdio.h>麻烦大家帮忙详细解释下此程序。

#include<stdio.h>main(){longf1,f2,f3;inti;f1=f2=1;for(i=3;i<=40;i++){f3=f1+f2;f1=f2;f... #include<stdio.h>
main()
{ long f1,f2,f3;
int i;
f1=f2=1;
for(i=3;i<=40;i++)
{f3=f1+f2;
f1=f2;
f2=f3;}
printf("the 40th is %ld\n",f3);}
麻烦大家帮忙详细解释下此程序。{f3=f1+f2;
f1=f2;
f2=f3;}
这个看不懂。
展开
 我来答
百度网友776ac62
2011-12-07 · 超过13用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:17.6万
展开全部
呃,楼主,是不是一道ACM的题目?你这个没有题目背景不好解释啊。
还有,为什么 i 循环要从i=3开始,需要38次循环的话直接i=0;i<38;i++不就完成了么。

for(i=3;i<=40;i++)

f3=f1+f2; //你这里将f3赋值为f1+f2,
f1=f2;
f2=f3; //这里将f3的值赋给f2,
}

它们的具体意义我不清楚,我只能给你解释它们是如何操作的。
首先,f3赋值为f2+f1,即f3=f1+f2;
然后将f2的值赋给f1,即f1=f2;
然后将f3的值赋给f2,然后结束循环。

也就是说,在每一次循环中,f3的值为本次循环开始时的 f2 与 f1 的和,f2 与 f3 的值最后会变成相同的,而f1的值会与上次循环中的f2的值相同。
数据变化的表为:
f1 f2 f3
1 2 2 //第一次循环结束,下面类推。
2 3 3
3 5 5
5 8 8
8 13 13
13 21 21
21 34 34
.......
自己看吧,可能有什么规律,但我没去找。
更多追问追答
追问
不好意思,题目是这样的——————
Fibnacci数列有下列规律:前两个数为1,从第三个数开始,每个数都是其前面两个相邻数的和,求该数列的第40项。
追答
这个函数即是求Fibnacci数列的第四十项的值。
百度网友fbc13ec
2011-12-07
知道答主
回答量:39
采纳率:0%
帮助的人:17.9万
展开全部
菲泼那碶数列的第四十项
追问
能给我解释解释吗,我看不懂
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黄逸妃
2011-12-07 · TA获得超过351个赞
知道答主
回答量:223
采纳率:0%
帮助的人:79.9万
展开全部
下载
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式