我有一个关于while循环的快速问题。
我想读取ASCII字符代码,如果它不是某个特定的ASCII代码,我不想继续并要求用户再次输入它。
这行得通
while (yn != 89)
{
printf("\nEnter");
flushall();
scanf("\n%c", &yn);
}
这不是
while (yn != 89 || yn != 121)
{
printf("\nEnter");
flushall();
scanf("\n%c", &yn);
}
天哪,我想我需要睡一觉。这是相当愚蠢的。:)谢谢各位顺便说一句。
最佳答案
表达式yn != 89 || yn != 12
始终为真任何值都不等于89
或不等于12
所以,这个表达没有实际意义。循环将永远循环,因为重复条件始终为真。
根据您的描述,您需要的条件是yn != 89 && yn != 12
&&
,而不是||
。
关于c - C-while(某物||某物),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5251743/