gpt4 book ai didi

c - c 中的循环产生不需要的结果

转载 作者:行者123 更新时间:2023-11-30 18:21:54 26 4
gpt4 key购买 nike

在下面的代码中,无论我做什么,它都会永远循环并永远显示“语法错误”。

此代码需要检查答案是否既不是“y”也不是“n”。如果再次询问答案,然后如果回答“y”,它将再次循环所有功能如果答案是“n”,它应该什么都不做......

char answer = ' ';
int round = 0;
do
{
round = chooseLevel();
guess(round);
while ((answer != 'y') || (answer != 'n'))
{
printf("\nWould you like to play again? (y/n): ");
answer = getch();
putch(answer );
printf ("\nchar is %c\n", answer );
if ((answer != 'y') || (answer != 'n'))
{
printf("Syntax Error");
}
}
}
while (answer == 'y');

最佳答案

条件应为 &&而不是|| :

(answer != 'y') && (answer != 'n')

answer不能同时为 'y' 和 'n',因此 answer != 'y'answer != 'n'将会是真的。如果是||整个语句将变成 true .

True || False => True

关于c - c 中的循环产生不需要的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34422178/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com