| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1399 人关注过本帖
标题:求助!关于getchar()!请知道的帮忙解释下
取消只看楼主 加入收藏
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
求助!关于getchar()!请知道的帮忙解释下
getchar():我在书上看到的时候说只能接受一个字符,但是后来遇到的一个例题里面却“好像”接受了一串的字符,我有点不明白了,希望高手可以解释一下,我把例子发上来
---------------------------------------------------------------------
例题·1:

char c;
c=getchar();
printf("%c",c);
我输入C,显示C。我输入CHINA,也是现实C。

例题·2:

char c;
while((c=getchar())!='\n')
 {
  if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
   {
    c=c+4;
    if(c>'Z'&&c<'Z'+4||c>'z')
     c=c-26;
   }
  printf("%c",c);
 }
printf("\n");
--------------------------------------------------------------------------
这个题目的意思是:编译密码,ABCDEF``````XYZ 这26个字母,就是把你输入的字母的ASCII代码+4位转换成新的字母,比如A->E,B->F

(我这里输入CHINA,显示的是GLMRE){/*我就郁闷了,上面的例题怎么CHINA用getchar就只显示C,而这里的CHINA同样用的是getchar但是却有5个显示出来,不是说只接受一个字符的吗?例题2给我的感觉好像能接受字符串*/}      
搜索更多相关主题的帖子: 解释 getchar 
2009-10-09 22:14
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
收藏
得分:0 
自己回复一个,代表我在关注这个论坛

小猪
2009-10-09 22:17
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
收藏
得分:0 
回复 3楼 m456m654
我的CHINA是一次性输入,然后按回车的

小猪
2009-10-09 22:23
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
收藏
得分:0 
以下是引用m456m654在2009-10-9 22:21:42的发言:

while((c=getchar())!='\n')
关键问题是字符的获得是在一个while循环语句里,你虽然每次只能从外界获得一个字符,但是每次输入一个字符后,如果仍然满足条件,即次字符不是\n,那么while循环就不停止,继续让你从外 ...
我的CHINA是一次性输入的,打完了按ENTER的

小猪
2009-10-09 22:24
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
收藏
得分:0 
回复 6楼 viky2003
理解了···
第一次来这个论坛求助
大伙都好热情
谢谢了
这个地方不错,问题解决好即时啊
不把这个网站收藏不行啊

小猪
2009-10-09 22:30
raindgy
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2009-10-9
收藏
得分:0 
回复 3楼 m456m654
谢谢

小猪
2009-10-09 22:30
快速回复:求助!关于getchar()!请知道的帮忙解释下
数据加载中...
 
   



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

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