| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2357 人关注过本帖, 2 人收藏
标题:getchar()的问题
取消只看楼主 加入收藏
lythonmao
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2011-10-27
结帖率:75%
收藏(2)
已结贴  问题点数:10 回复次数:4 
getchar()的问题
//*题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
//1.程序分析:利用while语句,条件为输入的字符不为'\n'.
程序代码:
#include "stdio.h"
int main(void)
{
  int letters = 0, spaces = 0, digits = 0, others = 0;
  char c ;
  printf("please input some characters:\n");

  while ((c=getchar())!= '\n')
  {
    if (c >= 'a'&&c <= 'z' || c >= 'A'&&c <= 'Z')
        letters++;
    else if (c >= '0'&&c <= '9')
        digits++;
    else if (c == ' ')
        spaces++;
    else
        others++;


 
  }

printf("letters=%d,spaces=%d,digits=%d,others=%d",letters,spaces,digits,others);

return 0;
}
我在这儿要问的是
c = getchar();这个语句为什么不能从while语句中抽出来放在while语句前面,就是写成:
c =getchar();
while(c != '\n')
{
}
请问为什么不能这样写;
搜索更多相关主题的帖子: 分析 英文字母 
2011-11-10 20:00
lythonmao
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2011-10-27
收藏
得分:0 
再问一下:
char c;
c = getchar();

和下面的有什么不同??
char c;
scanf("%c",&c);
2011-11-12 12:25
lythonmao
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2011-10-27
收藏
得分:0 
既然c = getchar();只能接收一个字符;为什么我执行程序时,可以一次性输入好多的字符,
而不是输入一个字符后,执行程序结束。
2011-11-12 17:07
lythonmao
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2011-10-27
收藏
得分:0 
不好意思,我好像在10楼问了一个弱智的问题~~~
2011-11-12 17:29
lythonmao
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2011-10-27
收藏
得分:0 
没想到我一个看似弱智的问题,竟然能得到如此精辟的知识。。。谢谢 TonyDeng。。。十分感谢`~~~~
2011-11-12 20:11
快速回复:getchar()的问题
数据加载中...
 
   



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

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