求助:谁能帮我解释一下这个小程序
main(){
long int f1,f2;
int i;
f1=1;f2=1;
for(i=1;i<=20;i++)
{
printf("%12ld%12ld",f1,f2);
if(i%2==0) printf("\n");
f1=f2+f1;
f2=f1+f2;
}
}
这个程序的题目是求fibonacci数列:1,1,2,3,5,8,...的前40个数;
但是我还是没有明白是这个程序的意思。
搜索更多相关的解决方案:
解释
----------------解决方案--------------------------------------------------------
你大概是"f1=f2+f1;f2=f1+f2;"这个语句看不董吧,第一次执行的时候f1,f2都被初始为1,到第一个循环时,f1=2,f2=3;再到第第二次循环时,上次循环执行完后的值作为,这次循环的初始值,依此下去。还有这个"if(i%2==0) printf("\n");"语句是当i是2的倍数时就换一行显示。
----------------解决方案--------------------------------------------------------
哦,对就是这里,好了,我明白了,谢谢了
----------------解决方案--------------------------------------------------------