标题:请教for循环的body问题
只看楼主
kelamiao
Rank: 1
来 自:上海
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-2-25
结帖率:100%
 问题点数:0 回复次数:4 
请教for循环的body问题
呵呵,不好意思,有麻烦大家。
今天到读到个新程序:
#include
main()
{
double nc;
for(nc=0;getchar()!=EOF;++nc)
    ;
printf(“%.0f\n”,nc);
}
教材说,该程序的BODY是空的,由于FOR循环不能没有BODY所以这里有一行独立的分号来从当BODY。
突然想到了教材前面的一个程序,如下
#include
main()
{
  int fahr;
for(fahr=0;fahr<=300;fahr=fahr+20)
printf(“%3d %6.1f\n”,fahr,(5.0/9.0)*(fahr+20))
}

两个程序虽然内容不一样,但是结构上基本一一对应,为什么下面这个程序就不需要单独的分号,它的BODY再哪里?
搜索更多相关主题的帖子: double 教材 
2012-02-28 16:53
stevewang
Rank: 2
来 自:中国四川
等 级:论坛游民
帖 子:17
专家分:33
注 册:2012-2-17
得分:0 
for(fahr=0;fahr<=300;fahr=fahr+20)
printf(“%3d %6.1f\n”,fahr,(5.0/9.0)*(fahr+20))

这两句是语法错误,编译时会报错;for循环必须要一个语句或多个语句组成,可以是空语句即一个分号即可,
也可以是{}大括号包含的复合语句。
2012-02-28 17:11
kelamiao
Rank: 1
来 自:上海
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-2-25
得分:0 
可能是我基础太差了。。。
#include
main()
{
double nc;
for(nc=0;getchar()!=EOF;++nc)
    ;
printf(“%.0f\n”,nc);
}
这个程序,我无论输入什么,怎么都没有输出啊
2012-02-28 20:03
laznrbfe
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:482
专家分:1599
注 册:2011-5-22
得分:0 
回复 3楼 kelamiao
#include<stdio.h>
main()
{
double nc;
for(nc=0;getchar()!=EOF;++nc)
    ;
printf("%.0f\n",nc);
}
windows系统:回车键+Ctrl+Z+回车键
linux系统好像用:Ctrl+D
2012-02-28 20:17
为了未来
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:26
专家分:20
注 册:2012-2-18
得分:0 
是书上的例题么  怎么那么多的错误哦  第一个程序for循环是控制输入的  但是怎么停止哦 还是无限循环哦  
2012-02-28 20:25



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




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

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