| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 449 人关注过本帖
标题:菜鸟一枚,求大神解答。
只看楼主 加入收藏
icemeltsun
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-11-28
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
菜鸟一枚,求大神解答。
在学习The C programming language 中有一个例题1.5.4:
#include <stdio.h>
#define IN 1 /* inside a word */
#define OUT 0 /* outside a word */
/* count lines, words, and characters in input */
main()
{
int c, nl, nw, nc, state;
state = OUT;
nl = nw = nc = 0;
while ((c = getchar()) != EOF) {
++nc;
if (c == '\n')
++nl;
if (c == ' ' || c == '\n' || c = '\t')
state = OUT;
else if (state == OUT) {
state = IN;
++nw;
}
}
printf("%d %d %d\n", nl, nw, nc);
}
是否可以换成:
#include <stdio.h>
 int main()
{
int c, nl, nw, nc, state;
nl = nw = nc = 0;
while ((c = getchar()) != EOF) {
++nc;
if (c == '\n')
++nl;
if (c == ' ' || c == '\n' || c == '\t')
++nw;
}
printf("%d %d %d\n", nl, nw, nc);
}。书中那样做是什么道理~~~~~。
另这个怎么改成For语句:#include <stdio.h>
/* count lines in input */
main()
{
int c, nl;
nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);
}
搜索更多相关主题的帖子: include outside 电影票 count 天空 
2014-11-28 16:53
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:10 
是作业?
2014-11-28 20:58
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:10 
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
需要大括号

一片落叶掉进了回忆的流年。
2014-11-28 21:02
快速回复:菜鸟一枚,求大神解答。
数据加载中...
 
   



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

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