| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1817 人关注过本帖
标题:[讨论]for 和while语句哪个运行时间短?
只看楼主 加入收藏
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
收藏
得分:0 
以下是引用Knocker在2006-4-30 6:44:00的发言:

1。不要想当然
2。用实例验证你的想法

谢谢KNOCKER的提醒!


我的原则很简单:不做不喜欢的事!
2006-04-30 10:09
nap
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-20
收藏
得分:0 
谢谢~!
2006-04-30 10:43
jiajia5714
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-4-27
收藏
得分:0 
2006-04-30 13:31
仁者无敌
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2006-3-5
收藏
得分:0 
有意思,这个问题还没有考虑过,应该知道的啊,大家说一说啊!

I am a programmer !
2006-05-03 17:36
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
/*比较for()跟while()的速度*/
#include<stdio.h>
#include<time.h>
#define NMAX 1000000000 /*奔4,2.6GHz*/
int main()
{
long i,t0,t1,t2;
double s1=0,s2=0;
t0=clock();
for(i=1;i<=NMAX;i++)
s1+=1.0/i;
t1=clock();
i=1;
while(i<=NMAX){
s2+=1.0/i;i++;}
t2=clock();
printf("%.15lf,%.15lf\n",s1,s2);
printf("t1=%ld\n",t1-t0);
printf("t2=%ld\n",t2-t1);
return 0;
} /*结论:不分伯仲,不相上下*/

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-03 18:09
仁者无敌
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2006-3-5
收藏
得分:0 
不分上下,不分伯仲,就是一样了?这是比较小的程序了!可能分不出来吧

I am a programmer !
2006-05-03 22:28
ninanwine
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-5-1
收藏
得分:0 
可以用计算次数比较一下,以前学数据结构时老师讲过!

用0-1统治世界!
2006-05-03 22:31
ninanwine
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-5-1
收藏
得分:0 
以下是引用–★–在2006-5-3 18:09:00的发言:
/*比较for()跟while()的速度*/
#include<stdio.h>
#include<time.h>
#define NMAX 1000000000 /*奔4,2.6GHz*/
int main()
{
long i,t0,t1,t2;
double s1=0,s2=0;
t0=clock();
for(i=1;i<=NMAX;i++)
s1+=1.0/i;
t1=clock();
i=1;
while(i<=NMAX){
s2+=1.0/i;i++;}
t2=clock();
printf("%.15lf,%.15lf\n",s1,s2);
printf("t1=%ld\n",t1-t0);
printf("t2=%ld\n",t2-t1);
return 0;
} /*结论:不分伯仲,不相上下*/

程序我不知道,我有的函数不懂!各种运算用不用的时间度量,然后看总的计算次数,计算时间复杂度!用P4不行,你用286之类的也许有区别!


用0-1统治世界!
2006-05-03 22:36
jeely
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-4
收藏
得分:0 

for 和 while循环是有区别的,前面是计数循环,后面的是条件循环.条件循环每进行一次都要判断条件是否满足,而计数循环不需要,只要不超出范围就可以进行下去.呵呵,要试一下才知道哦

2006-05-04 08:42
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
回复:(jeely)for 和 while循环是有区别的,前面是计...
以下是引用jeely在2006-5-4 8:42:00的发言:

for 和 while循环是有区别的,前面是计数循环,后面的是条件循环.条件循环每进行一次都要判断条件是否满足,而计数循环不需要,只要不超出范围就可以进行下去.呵呵,要试一下才知道哦

一派胡言!


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-04 13:12
快速回复:[讨论]for 和while语句哪个运行时间短?
数据加载中...
 
   



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

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