CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  非技术区

c程序设计语言书上的问题!帮帮忙

楼主haotian422(wuhaotian)2003-12-01 22:39:16 在 C/C++ / 非技术区 提问

那个“统计字符数”的问题,为什么我按书上写完以,运行只能输入字符的,它是怎么统计出来的啊?相信大家都做过吧!!我刚学c   几天!大家帮帮我!  
   
  代码如下:  
   
                  #include   <stdio.h>  
                 
                /*统计输入字符数1*/  
   
                main()  
                 
                {  
                      long   nc;  
                      int   c;  
                       
                      nc=0;  
                       
                      while(nc=getchar()!=EOF)  
   
                      ++nc;  
   
                      printf("%1d\n",nc);  
   
                  } 问题点数:0、回复次数:4Top

1 楼haotian422(wuhaotian)回复于 2003-12-01 22:40:42 得分 0

while中没有nc=的这个不队是下面这个!  
   
  #include   <stdio.h>  
                 
                /*统计输入字符数1*/  
   
                main()  
                 
                {  
                      long   nc;  
                      int   c;  
                       
                      nc=0;  
                       
                      while(getchar()!=EOF)  
   
                      ++nc;  
   
                      printf("%1d\n",nc);  
   
                  }Top

2 楼zhangfjj(小张)回复于 2003-12-02 01:27:16 得分 0

2个错误:  
  1。循环终止条件  
   EOF是在stdio.h中定义的一个宏: #define   EOF   -1,一般用做文件的结束符。  
  你用它做循环终止条件,会死循环,你的程序既然是统计输入的字符数,你应该指定一个输入终止的条件,如输入一个回车符表示输入结束。  
  2。清除数据输入缓冲区,在循环体中加一个语句getchar();不然你输入一个字符'a',对于你的循环来说用两个字符'a'和回车符  
  #include   <stdio.h>  
  main()  
  {  
    long   nc=0;  
    while(getchar()!='\n')  
        nc++;  
    printf("%ld\n",nc);  
  }  
  Top

3 楼zhangfjj(小张)回复于 2003-12-02 01:30:02 得分 0

对不起,输入错了  
  不然你输入一个字符'a',对于你的循环来说接收到两个字符'a'和回车符,你就无法统计出正确的字符数  
  #include   <stdio.h>  
  main()  
  {  
    long   nc=0;  
    while(getchar()!='\n')  
   {  
    getchar();  
        nc++;  
      }  
    printf("%ld\n",nc);  
  }  
  Top

4 楼haotian422(wuhaotian)回复于 2003-12-02 12:31:43 得分 0

那这是书上的错误吗?  
   
  应该是吧!!难怪我怎么都想不明,这下可以了!  
   
  谢谢!我想自学但感觉真的好麻烦啊!!!谢谢高手!!Top

相关问题

  • 关于C语言程序设计的书
  • 找电子书--《C语言程序设计》谭浩强
  • [求书]C程序设计语言(第2版)
  • 高质量程序设计指南 C++_C语言书上的一个问题
  • 求老书《C语言图象处理程序设计》配套源代码
  • <C#程序设计>,这本书!
  • C++ Primer (3RD)中文版 和 C++程序设计语言(特别版)的电子书
  • <<C++程序设计语言>>例程报错:eh.h is only for C++!
  • 清华出版的<C++语言程序设计>(郑莉编写)书怎么样啊?
  • 请大家给推荐一些关于BIOS中断,中断,驻留程序设计的书(C语言版)

关键词

  • c++
  • 字符
  • 循环
  • nc
  • 输入
  • getchar
  • 统计
  • 回车符
  • 书
  • 终止

得分解答快速导航

  • 帖主:haotian422

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo