gpt4 book ai didi

c# - while 语句忽略响应值

转载 作者:太空宇宙 更新时间:2023-11-03 17:11:12 26 4
gpt4 key购买 nike

我有一个命令行要求用户说 (Y/N),这个值被传递给 checkResponse 方法。

出于某种原因,while 循环会忽略该值,即使在我调试时它显示的值为“Y”。当该值设置为“N”时,它也会继续循环。如果我将 if 语句移到 while 语句下方,程序将运行一半。我可以发送一个初始值“Y”,while 语句将忽略它并开始运行其中的代码。

知道我遗漏或忽略了什么吗?

提前致谢。

public void checkResponse(string response, string confirmValue)
{
Console.WriteLine(response);
Console.WriteLine(response);
if (response == "Y")
{
return;
}
else if (response == "N")
{
Environment.Exit(0);
}
else
{
while ((response != "Y") || (response != "N"))
{
Console.Clear();
Console.WriteLine("\"" + response + "\" is not a valid response.");
Console.WriteLine();
Console.WriteLine("You entered:" + confirmValue);
Console.WriteLine("Is this correct? (Y/N)");
response = Console.ReadLine().ToUpper();
}
}
}

最佳答案

OR 更改为 AND 逻辑运算符:

(response != "Y") && (response != "N")

关于c# - while 语句忽略响应值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11650595/

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