| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1149 人关注过本帖
标题:for语句后的“;”的疑惑
只看楼主 加入收藏
zhangzhongxu
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-7-20
收藏
 问题点数:0 回复次数:8 
for语句后的“;”的疑惑
小弟用冒泡法对6个数从小到大排序;
#include <stdio.h>
void main()
{ int i,j,t,a[6];
printf("enter the number:");
for(i=0;i<6;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++);
for(j=0;j<5-i;j++);
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
for(j=0;j<6;j++);
printf("%d\t",a[j]);
}
在二重循环
for(i=0;i<5;i++);
for(j=0;j<5-i;j++);后不小心加了两个分号,
编译时没提示错误,但输入1 2 3 0 -84 102时输出为1 2 3 0 -84 102,
去掉这两个分号后,输出正确 ,请问这是怎么回事?
搜索更多相关主题的帖子: 语句 
2008-08-01 22:12
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
收藏
得分:0 
你试试for(;;);就知道了

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-08-01 22:20
zhangzhongxu
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-7-20
收藏
得分:0 
楼上是说这个for循环执行了一个空语句是吗?
2008-08-01 22:23
netstriker
Rank: 1
等 级:新手上路
威 望:1
帖 子:257
专家分:0
注 册:2007-3-24
收藏
得分:0 
如果写成    for(;;);
现在就是一个死循环了,
2008-08-01 22:57
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
收藏
得分:0 
就是这样啊

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-08-02 11:54
chuxuhaha
Rank: 1
来 自:咸阳
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-8-2
收藏
得分:0 
哈哈
for是空语句不需要加;
2008-08-02 12:04
SecretX
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2008-7-31
收藏
得分:0 
for后面加分号,应该是变成一个空循环,什么也不做.
2008-08-02 20:53
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
错了、
应该没有的
否则就是空语句了
2008-08-02 22:38
Rand
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-7-2
收藏
得分:0 
你那句话就是循环5次,因为有个“ ;” 所以for后面没语句,也就是说循环中的每一次只循环,而不做事
2008-08-02 23:32
快速回复:for语句后的“;”的疑惑
数据加载中...
 
   



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

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