标题:编写一个统计空格、制表符和换行符个数的程序,如何修改?
只看楼主
码农C小查
Rank: 1
来 自:安徽安庆
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-1-26
结帖率:50%
 问题点数:0 回复次数:5 
编写一个统计空格、制表符和换行符个数的程序,如何修改?
#include "stdio.h"

main()
{
    int c,nb,nt,nl;
    nb=0;
    nt=0;
    nl=0;
    while((c=getchar())!=EOF)
    {
        if(c==' ')
            nb++;
        if(c=='\t')
            nt++;
        if(c=='\n')
            nl++;

    }
    printf("%d, %d, %d\n",nb,nt,nl);
}
如何让这个程序输出,按下回车键没有用,只是进入下一次输入,什么情况下让c=getchar()==EOF成立!求解
搜索更多相关主题的帖子: include 换行符 制表符 
2013-01-31 16:03
killerlzt
Rank: 2
等 级:论坛游民
帖 子:11
专家分:67
注 册:2012-4-27
得分:0 
在 UNIX中, EOF表示能从交互式 shell (终端) 送出 Ctrl+D 。在微软的 DOS 与 Windows 中能送出 Ctrl+Z。

也就是说,如果是Linux环境下,ctrl+d即可结束;
          如果是windows环境,ctrl+z即可结束
2013-01-31 17:35
码农C小查
Rank: 1
来 自:安徽安庆
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-1-26
得分:0 
回复 2楼 killerlzt
是不是只要在想要结束输入的时候输入ctrl+z就可以输出结果
试过了 没有用啊 只是又出现了^z
2013-01-31 20:53
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
回复 3楼 码农C小查
这种是shell的事,C语言不管,也没资格管,不同的shell有不同的行为
比如在windows下,你得在行首输入ctrl+z,行尾还得回车一下。
2013-02-01 08:58
hf1234ty
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-4-20
得分:0 
回复 3楼 码农C小查
要结束的话只要按下CTRL+Z 回车就好了
2013-04-20 11:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
又是不看论坛帖子的

授人以渔,不授人以鱼。
2013-04-20 11:49



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




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

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