参见下面的代码...我试图在程序开始时获得更立即的响应,这很粗糙,无论如何都不是成品。我的问题在于我认为的 if else 语句。当我尝试根据提示输入“Y”或“N”时,我必须输入几次才能让控制台识别输入并吐出适当的响应。我希望只需要一个输入条目即可输出相应的响应。截至目前,情况并非如此。我还附加了控制台输出以供透视。正如你所看到的,控制台希望我输入 Y 两次,而不是一次<
代码:
namespace ConsoleAppSharp;
internal static class Program
{
public static void Main()
{
Console.WriteLine("Hello, Simon!");
Console.WriteLine("Shall we begin?, Please Enter: Y/N");
Console.ReadLine();
if (Console.ReadLine() == "Y")
{
Console.WriteLine("Alright, Here we go!");
}
else if (Console.ReadLine() == "N")
{
Console.WriteLine("Adios Simon!");
}
}
控制台:
你好,西蒙! 我们开始吧?,请输入:Y/N
是
是
好的,我们开始吧!
我尝试使用换行符或附加 Console.ReadLine(); 来纠正上述代码的问题。代码,但没有什么能让提到的问题消失,到目前为止,我的输入仍然需要多次才能获得输出。
例如:
是
是
是控制台中响应所必需的,我想让它看起来更像这样:
你好,西蒙!
我们开始吧?,请输入:Y/N
“是”
好的,我们开始吧!
您似乎在 if 语句中调用 readline 多次。您可以尝试分配一个答案变量来读取行,并使用 if 语句判断该答案变量是否为 Y 或 N。