如何在 C# 中跳出 while 循环。休息不工作

How to break out of a while loop in C#. Break not working

我似乎无法使用 break 语句跳出此 while 循环。这是我的代码:

while (true) {
            Console.WriteLine("What is 1 + 1?");
            int answer = Convert.ToInt32(Console.ReadLine());
            if (answer != 2)
            {
                Console.WriteLine("Wrong answer. Press enter to get your next sum");
                Console.ReadLine();
            }

            else if (answer == 2)
            {
                Console.WriteLine("Well done. Press enter to get your next sum");
                Console.ReadLine();
                break;
            }
        }

        Console.WriteLine("What is 1 + 3");
        int answer2 = Convert.ToInt32(Console.ReadLine());

当您输入一个不同于 2 的数字时,您实际上读取的是您未处理的另一行:

if (answer != 2)
{
    Console.WriteLine("Wrong answer. Press enter to get your next sum");
    Console.ReadLine();
}

您的困惑可能是因为这一行。将其更改为:

if (answer != 2)
{
    Console.WriteLine("Wrong answer. Press enter to get your next sum");
}
else{
    Console.WriteLine("Correct answer");
    break;
}