[求助]遇到输出字符的不解的现象,请大家看看是怎么回事?
遇到输出字符的不解的现象,请大家看看是怎么回事?
代码如下:
#include<stdio.h> main() { char b; b=getchar();
while(b!='#') { putchar(b); b=getchar(); }
printf("\n"); system("pause"); }
照理,应该是这样的:
aabbcc#回车。就会结束了。
但是,结果却是:
abc#回车
abc
怎么回事?
----------------解决方案--------------------------------------------------------
我运行是正常的呀!
没有任何问题,我用的是BC3.1!
----------------解决方案--------------------------------------------------------
我的也没有问题C-free
----------------解决方案--------------------------------------------------------
abc#回车
abc
我觉得两者就差个“#”号而已。
你的意思就是说那个“#”号没有显示出来?
如果这这样的问题的话,那就好说,
while(b!='#') 当你输入“#”好后,while 循环条件便不成立,
所以循环体内的 putchar(b); 这一条语句不被执行。
----------------解决方案--------------------------------------------------------
我当时没理解GETCHAR是以单个字符处理的,
现在理解了
----------------解决方案--------------------------------------------------------
该程序遇到#号就会结束,与前面任何字符无关!
----------------解决方案--------------------------------------------------------