当前位置: 代码迷 >> C语言 >> 对c计数程序的疑问
  详细解决方案

对c计数程序的疑问

热度:199   发布时间:2006-10-22 11:04:46.0
对c计数程序的疑问

我刚学c,用的是Dennis M.Ritchie和Brian W.Kernighan合著的《The c programming languagel》,学到字符计数那里就不队了,那代码运行却没结果,希望各位高手能帮帮我,其代码是
#include "stdio.h"
main()
{
double nc;
for(nc=0;getchar()!=EOF;++nc)
;
printf("%.0f\n",nc);
}

我在vc6.0和tc下运行后总没结果输出,我发现去掉for后那分号能一行一行输出结果,当为什么一次输出总的字符计数却不行呢?书上接下来的几个计数程序都存在这样的问题。希望大家帮帮我!!!

搜索更多相关的解决方案: 疑问  计数  The  Ritchie  

----------------解决方案--------------------------------------------------------
以下是引用zorrozzz在2006-10-22 11:04:46的发言:

我刚学c,用的是Dennis M.Ritchie和Brian W.Kernighan合著的《The c programming languagel》,学到字符计数那里就不队了,那代码运行却没结果,希望各位高手能帮帮我,其代码是
#include "stdio.h"
main()
{
double nc;
for(nc=0;getchar()!=EOF;++nc)//结束不了,用文件输入试试,或者改为getchar()!='\n'
;
printf("%.0f\n",nc);
}

我在vc6.0和tc下运行后总没结果输出,我发现去掉for后那分号能一行一行输出结果,当为什么一次输出总的字符计数却不行呢?书上接下来的几个计数程序都存在这样的问题。希望大家帮帮我!!!


----------------解决方案--------------------------------------------------------

getchar()!='\n';//估计也不行吧

问题应该是缓冲区的缘故 每次应该清空吧


----------------解决方案--------------------------------------------------------

怎么不可以.,楼主应该是输入许多个字符,然后把所有字符的个数输出,用我这个可以的,我测试过了.


----------------解决方案--------------------------------------------------------
用nuciewth的方法是可以的,我用EOF尝试,好像得用两次,即:”ctrl+z“后回车,然后再”ctrl+z“后回车,才能出结果。不知道怎么回事。EOF应该是”ctrl+z“吧,我是在vc6中运行的。
----------------解决方案--------------------------------------------------------
怎么不可以.,楼主应该是输入许多个字符,然后把所有字符的个数输出,用我这个可以的,我测试过了

嗯 这样是可以的 偶理解错了

[此贴子已经被作者于2006-10-22 12:05:32编辑过]


----------------解决方案--------------------------------------------------------
abcdef回车
^Z
----------------解决方案--------------------------------------------------------
abcdef回车
^Z
这样的话计数时就把回车也算在内了。
----------------解决方案--------------------------------------------------------
以下是引用husi在2006-10-22 16:20:41的发言:
abcdef回车
^Z
这样的话计数时就把回车也算在内了。

如果不要把回车计算进去的话,那就在行末尾输入^Z作为行结束符,最后另起一行输入^Z作为整个文件结束符。


----------------解决方案--------------------------------------------------------

把回车算进去没什么不对的啊!

如果你不想算回车就根本没必要这么写了


----------------解决方案--------------------------------------------------------
  相关解决方案