关于while()语句的一个小问题。
源代码如下#include"stdio.h"
main()
{
char c1;
char c2;
int player=1;
while(1)
{
if(player==1)
{
printf(" 1\n");
scanf("%c",&c1);
printf("%c",c1);
player=2;
}
if(player==2)
{
printf(" 2 \n");
scanf("%c",&c2);
printf("%c",c2);
player=1;
}
}
}
这个程序我想要的目的是if语句交替进入, 输出一个1 ,给c1赋值一个字符,紧着输出2 为c2赋值,但是程序运行的结果为什么是
首先输出 1 当我随便输入一个字母的时候比如s ,之后则是 s 2 1 ,疑问就是为什么进入 if(player==2)这个语句的时候那个scanf语句似乎是失效了?为什么不让输入
了?请各位大神指点一下啊