首页 > 代码库 > C语言scanf跳出循环的问题

C语言scanf跳出循环的问题

技术分享

注意:%C前面有个空格,如果不加空格,会跳出while循环。
第一次输入的时候,回车键会滞留在输入缓冲区,第二次要去输的时候,会直接去读回车键
在第二次要去输入的时候,可以先清除缓冲区,用getchar(),或者用fflush(stdin)
printf("Y or N?");
scanf("%c",&a);
getchar();//或者fflush(stdin);
printf("Y or N?);
scanf("%c",&b);

 

C语言scanf跳出循环的问题