| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2970 人关注过本帖
标题:7个FOR语句只有一个分号!
只看楼主 加入收藏
aaaasix
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-6-10
收藏
得分:0 

我想也应该是第一个FOR 的控制范围要一直到遇到分号为止的!

但如果是这样的话:那为什么照3楼的高手加的{}来运行又是对的?

晕~~~~

难道大家没注意到这个问题吗?

2007-07-10 01:42
yu_hua
Rank: 2
等 级:论坛游民
帖 子:222
专家分:95
注 册:2006-8-10
收藏
得分:0 
c语言最讨人厌的就是分号
太难掌握啦
2007-07-10 09:30
fyi1106
Rank: 1
等 级:新手上路
帖 子:327
专家分:0
注 册:2006-10-14
收藏
得分:0 
建议大家在写 for while if do...while 这样的语句时,不管怎样,都加上{ }。
这不会是更麻烦,相反,当你要对你的程序进行修改或扩展时,你会发现,当你加了{ }后,程序是非常好看的,而且思路也会比较清晰。
反正在{ }是可有可不有时,加上吧,反正不会错!

JavaScript forever!
2007-07-10 10:02
yu_hua
Rank: 2
等 级:论坛游民
帖 子:222
专家分:95
注 册:2006-8-10
收藏
得分:0 
与13楼有一点不同看法:不能一概而论
下面举5个元素(1,2,3,4,5)全排列的例子:
#include <stdio.h>
main( )
{
int a,b,c,d,e;
for(a=1;a<=5;a++)
for(b=1;b<=5;b++)if(b-a)
for(c=1;c<=5;c++)if(b-a)if(c-b)
for(d=1;d<=5;d++)if(b-a)if(c-b)if(d-c)
for(e=1;e<=5;e++)if(b-a)if(c-b)if(d-c)if(e-d)
printf("%d%d%d%d%d\t",a,b,c,d,e);

getch();
}
这样的程序如果加上许多花括弧,还会好看吗?

2007-07-10 12:13
fyi1106
Rank: 1
等 级:新手上路
帖 子:327
专家分:0
注 册:2006-10-14
收藏
得分:0 

我绝不会写这样的代码。

首先,好看不是单纯的“代码好看”,而是“逻辑”好看。你的代码一眼看上去很难明白逻辑,至少我看来是这样。

代码“缩进”是很重要的,最起码明白语句的层次关系,你那些for没有缩进,看起来还以为是顺序语句,这样写只有你自已明白,而别人看却很难懂。还有你那么多if,能不能用一个表达式写出来呢?有必要写那么多if吗?

另外我强调的用花括号,是为了程序的“扩展性”,也就是对程序进行修改。
如果你要对上面的代码进行调试,你要做一些什么工作?比如你想把每次循环后的结果打印出来,你又要加多少个花括呢?难道调试完后又删掉花括?

在花括可加可不加时,有一种情况不加也好,就是代码块非常短,非常简单,也没有什么复杂的逻辑。比如一个判断后跟一个打印,这时不加也好。


JavaScript forever!
2007-07-10 12:33
fyi1106
Rank: 1
等 级:新手上路
帖 子:327
专家分:0
注 册:2006-10-14
收藏
得分:0 

还有,14楼的程序是错的,正确的是这样:

#include <stdio.h>

main( )
{
int a, b, c, d, e;
for(a=1; a<=5; a++){ //a
for(b=1; b<=5; b++){ //b
if(b!=a){
for(c=1; c<=5; c++){ //c
if(c!=a && c!=b){
for(d=1; d<=5; d++){ //d
if(d!=a && d!=b && d!=c){
for(e=1; e<=5; e++){ //e
if(e!=a && e!=b && e!=c && e!=d){
printf(\"%d%d%d%d%d\t\", a, b, c, d, e);
}
}
}
}
}
}
}
}
}
getch();
}


良好的结构+易懂的注释=受欢迎的程序。


JavaScript forever!
2007-07-10 12:55
yu_hua
Rank: 2
等 级:论坛游民
帖 子:222
专家分:95
注 册:2006-8-10
收藏
得分:0 
楼上无知,敢说我错,其实只要运行一下即可
楼上的程序,其丑无比,虽然是“对的”程序
2007-07-10 16:40
fyi1106
Rank: 1
等 级:新手上路
帖 子:327
专家分:0
注 册:2006-10-14
收藏
得分:0 





忘记不能发纯表情的贴了。加点文字。

[此贴子已经被作者于2007-7-10 19:23:59编辑过]


JavaScript forever!
2007-07-10 19:23
ml342418175
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2007-4-13
收藏
得分:0 
楼上的考虑的很周到啊

做人要洒脱一点,潇洒一点!
2007-07-11 00:11
守望♂幸福
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2006-4-25
收藏
得分:0 

答8楼的问题. 前2个for是一个循环,3.4个for是一个循环.
第5个就是一个输出语句,基本不列入难度之内.


偶是偶滴偶像!!~ QQ:375490156
2007-07-11 11:46
快速回复:7个FOR语句只有一个分号!
数据加载中...
 
   



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

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