标题:[求助]请大家帮我理解程序
只看楼主
dyoli
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2005-10-20
 问题点数:0 回复次数:9 
[求助]请大家帮我理解程序
我是菜鸟请大家多多关照,请大侠帮我理解一下这个程序每一步所表示的意思.
古典问题:兔子产子(非波那契数列)(1,1,2,3,5,8,13,21.............)
main()
{
long f1,f2;
int i;
f1=f2=1;
for(i=1;i<=20;i++)
{
printf("%121d %121d",f1,f2);
if(i%2==0)printf("\n");/*r控制输出,每行四个*/
f1=f1+f2;
f2=f1+f2;
}
}

搜索更多相关主题的帖子: printf main long 
2005-11-21 09:05
大水牛
Rank: 1
等 级:新手上路
威 望:1
帖 子:233
专家分:0
注 册:2005-11-21
得分:0 
只是一个类似于递归调用的方法,自己慢慢理解,只要是这两句
f1=f1+f2;
f2=f1+f2;

虽然现在的我什么都不明白,但总有一天,我将包容一切,让优秀变成一种习惯。。。。。。。。。。。。
2005-11-21 12:33
liangfeng110
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-11-20
得分:0 

用筛法求100之内的素数.
#include<math.h>
main()
{int i,j,n,a[101];
for(i=2;i<=100;i++)
a[i]=i;
for(i=2;i<sqrt(100);i++)
for(j=i+1;j<=100;j++)
{if(a[i]!=0 &.&.a[j]!=0)
if(a[j]%a[i]==0)
a[j]=0;}
printf("\n");
for(i=2,n=0;i<=100;i++)
{if(a[i]!=0)
{printf("%5d",a[i]);
n++;}
if(n==10)
{printf("\n");
n=0;}
}
}
还有其它的方法不
高手们

[此贴子已经被作者于2005-11-21 13:13:56编辑过]

2005-11-21 12:55
Lc_fox
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-11-20
得分:0 

第一次循环

f1 = f1 + f2; f1 = 1 + 1; f1 =2;
f2 = f1 + f2; f2 = 2 + 1; f2 =3;

第二次循环

f1 = f1 + f2; f1 = 2 + 3; f1 = 5;
f2 = f1 + f2; f2 = 5 + 3; f2 = 8;

第三次循环

f1 = f1 + f2; f1 = 5 + 8; f1 = 13;
f2 = f1 + f2; f2 = 13 + 8; f2 = 21;

自己用脑袋循环一下就懂了


Rove_Pro 流浪与编程 http://post.baidu.com/f?kw=rove_pro
2005-11-21 13:01
大水牛
Rank: 1
等 级:新手上路
威 望:1
帖 子:233
专家分:0
注 册:2005-11-21
得分:0 

哈哈,你的大脑能和机器比了,哈哈,高手啊


虽然现在的我什么都不明白,但总有一天,我将包容一切,让优秀变成一种习惯。。。。。。。。。。。。
2005-11-21 18:03
dyoli
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2005-10-20
得分:0 
大侠我知道了,不胜感谢!
2005-11-21 20:18
红太阳
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2005-11-21
得分:0 
呵呵
2005-11-21 20:58
cleverfox
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-11-21
得分:0 

关于递归,可以这样理解:
从前有座山,山上有座庙,庙里有个老和尚对小和尚说:从前有座山,山上有座庙,庙里有个老和尚对小和尚说:从前有座山,山上有座庙,庙里有个老和尚对小和尚说:从前有座山,山上有座庙,庙里有个老和尚对小和尚说:..........
当然,这个理解也不完全,它没有解释递归的返回问题。不过大体意思就是这样了!


Fox
2005-11-23 18:55
jinhua545
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2005-11-20
得分:0 

LZ,你的程序有错吧

2005-11-23 21:30
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
得分:0 

fn=f1+f2
f1=f2
f2=fn
也可以,只是每次输出一个值


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2005-11-25 23:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-34395-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037693 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved