读书人

关于do-while循环

发布时间: 2012-08-03 00:12:14 作者: rapoo

求助关于do-while循环
对如下代码的运行结果感到很困惑:
int main(void)
{
char answer='y';
int i=0;

do
{
printf("请输入内容:");
scanf("%d",&i);
while(i<2)
{
printf("Hello World!\n");
i++;
}

if(i==2)
{
printf("Good morning.\n");
}
else
{
printf("Good afternoon.\n");
}

printf("需要再输入?(y or n)");
scanf("%c",&answer);
}while(tolower(answer)=='y');

system("Pause");
return 0;
}
当我给变量i输入数值3的时候,现实的结果是:
请输入内容:9
Good afternoon.
需要再输入?(y or n)请按任意键继续. . .
为什么没等我输入y或者n就直接结束了?求指点。

[解决办法]

探讨

把回车赋给 answer 了。

读书人网 >C语言

热点推荐