当前位置: 代码迷 >> C语言 >> 求助:谁能帮我解释一下这个小程序 
  详细解决方案

求助:谁能帮我解释一下这个小程序 

热度:154   发布时间:2005-02-22 12:55:00.0
求助:谁能帮我解释一下这个小程序 
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的倍数时就换一行显示。
----------------解决方案--------------------------------------------------------
哦,对就是这里,好了,我明白了,谢谢了
----------------解决方案--------------------------------------------------------
  相关解决方案