关于%c的问题
一次在运行程序时,语句里明明有scanf("%c",&c);
但程序并不让你输入,只是一闪而过
同样有时 c=getchar();也是如此
还有的时候执行
scanf("%c",&c);
输入完毕以后,并不能有效的给c赋值
请问这是为什么?
2007-07-08 12:43
我想你%c是什么意思你没搞懂吧
2007-07-08 12:49
2007-07-08 14:37
2007-07-08 15:17

2007-07-08 17:27
在 scanf("%c",&c);的%c前加个空格,因为scanf里的字符型会把前个语句的空格或回车当有效字符输入,所以在%c前加个空格,就不会出现一闪而过的情况了
我也遇到过这种情况!!

2007-07-08 17:49
2007-07-08 21:19
在 scanf("%c",&c);的%c前加个空格,因为scanf里的字符型会把前个语句的空格或回车当有效字符输入,所以在%c前加个空格,就不会出现一闪而过的情况了
我也遇到过这种情况!!
这个方法倒是挺简单的嘛~~
我以前在循环里用scanf的时候也遇见过这种错误,虽然知道是由于缓冲区引起的,但是当时还是让我们班的人头疼不已。

2007-07-08 21:22