标题:求教:单词计数程序无法输出,求大神帮忙看看~~
取消只看楼主
hu20845319
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-10-25
结帖率:100%
已结贴  问题点数:10 回复次数:4 
求教:单词计数程序无法输出,求大神帮忙看看~~
#include "stdafx.h"
#include "stdio.h"
int main(void)
{
    int c,nline=0,nwrite=0,nchar=0,state=0;
    while((c=getchar())!=EOF)
    {
        ++nchar;
        if(c=='\n')
            ++nline;
        if(c==' '||c=='\n'||c=='\t')
            state=1;//在单词外//
        else if(state==0)
        {
            ++nwrite;
            state=0;//在单词内//
        }
    }
    printf("the number of line:%d\n",nline);
    printf("the number of write:%d\n",nwrite);
    printf("the number of char:%d\n",nchar);

    return 0;
}
搜索更多相关主题的帖子: include 单词 number write 
2012-07-21 22:39
hu20845319
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-10-25
得分:0 
EOF就是end of file的缩写,在C库函数中一般返回值是-1,用Ctrl+Z结束的。

世上没有不可饶恕的错误,只要你有一颗改过的诚心~~
2012-07-21 22:49
hu20845319
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-10-25
得分:0 
我错了,是编译器的问题~~

世上没有不可饶恕的错误,只要你有一颗改过的诚心~~
2012-07-21 23:39
hu20845319
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-10-25
得分:0 
回复 5楼 obstratiker
没有啊~~这是一个统计单词的程序,碰到换行符和空格或者制表符的时候,说明在单词外面,所以nwrite(单词个数)的值就不会增加啦~~    开始用visual studio 2010编译没有输出,后来用VC6.0和DEV.C++又可以正常输出了,很奇怪~~

世上没有不可饶恕的错误,只要你有一颗改过的诚心~~
2012-07-21 23:50
hu20845319
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-10-25
得分:0 
回复 9楼 obstratiker
我竟然把代码给贴错了,真心无法原谅自己~~对不住各位大大了
中间那部分应该是这样的:
    if(c==' '||c=='\n'||c=='\t')
            state=0;
        else if(state==0)
        {
            ++nwrite;
            state=1;
        }

世上没有不可饶恕的错误,只要你有一颗改过的诚心~~
2012-07-23 12:32



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




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

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