C#中的While循环问题

用户名

我试图编写一个while循环代码,我试图让用户输入一个1到50之间的数字并显示数字。到目前为止,如果我在50岁以内,我将打印出一条消息,如果我超过50岁,则将打印出另一条消息,但是如果用户想输入另一个数字,但我需要继续,但它会退出。

以下是我所拥有的:

class Program
{
    static void Main(string[] args)
    {
        const int from = 1;
        const int to = 50;

        int randomNumber = 50;
        int enteredNumber;

        Console.Write("The number is between 1 and 50.", from, to);
        while (true)
        {
            Console.Write("Enter a number: ");
            if (int.TryParse(Console.ReadLine(), out enteredNumber))
            {
                if (enteredNumber <= randomNumber)
                {
                    Console.WriteLine("You entered a number between 1 & 50");
                    break;
                }
                else
                {
                    if (enteredNumber > randomNumber)
                    {
                        Console.WriteLine("You didn't enter a number between 1 & 50.");
                        break;
                    }
                    else
                    {
                        Console.WriteLine("Press any key to exit.");
                        Console.ReadKey();
                    }
                }
            }
        }
    }
}
杰森·罗尔(Jason Roell)

正如其他人所指出的那样,break它位于错误的位置。

看看这个。我清理它并添加了一些错误处理,现在允许用户通过输入“ Quit退出或按“ Enter继续

class Program
{
    private static void Main(string[] args)
    {
        const int from = 1;
        const int to = 50;

        int randomNumber = 50;
        int enteredNumber;

        Console.Write("The number is between 1 and 50.", from, to);
        while (true)
        {
            Console.Write("Enter a number: ");
            if (int.TryParse(Console.ReadLine(), out enteredNumber))
            {
                if (enteredNumber <= randomNumber)
                {
                    Console.WriteLine("You entered a number between 1 & 50. Hit 'Enter' play again or enter 'Quit' to exit");
                    var answer = Console.ReadLine();
                    if (answer.ToLower() == "quit")
                    {
                        break;
                    }
                }
                else if (enteredNumber > randomNumber)
                {
                    Console.WriteLine("You didn't enter a number between 1 & 50. Hit 'Enter' play again or enter 'Quit' to exit");
                    var answer = Console.ReadLine();
                    if (answer.ToLower() == "quit")
                    {
                        break;
                    }

                }
            }
            else
            {
                Console.WriteLine("You didn't enter a number between 1 & 50. Hit 'Enter' play again or enter 'Quit' to exit");
                var answer = Console.ReadLine();
                if (answer.ToLower() == "quit")
                {
                    break;
                }
            }
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#中的While循环问题

来自分类Dev

Python中的While循环问题

来自分类Dev

Python中的While循环问题

来自分类Dev

linux中while循环的问题

来自分类Dev

在C中-使用strtok时While循环退出问题

来自分类Dev

C#比较两个数组中的循环问题

来自分类Dev

尝试添加引用时C#中的循环依赖问题

来自分类Dev

C中的While循环

来自分类Dev

基本的while循环C#

来自分类Dev

在 Python 中解释“while 循环”符号的问题

来自分类Dev

在python中让while循环重复的问题

来自分类Dev

在 Swift 5 中遇到 while 循环问题

来自分类Dev

嵌套while循环与文件c ++问题

来自分类Dev

C ++中的循环依赖问题

来自分类Dev

c 中的 for 循环的 fgets() 问题

来自分类Dev

c#类,结构或接口成员声明中的无效令牌“ while”(while循环不起作用)

来自分类Dev

对C ++中while()循环的理解

来自分类Dev

在C中优化while循环?

来自分类Dev

在C中优化while循环?

来自分类Dev

汇编中的C while循环

来自分类Dev

在C中优化while循环?

来自分类Dev

C中while循环的阶乘

来自分类Dev

#子手在C#循环问题中

来自分类Dev

while循环中的布尔语句C#

来自分类Dev

MessageBox和while循环C#

来自分类Dev

前哨控制while循环C#

来自分类Dev

C# while 循环不起作用

来自分类Dev

C# - 关于 while 循环的程序

来自分类Dev

检查while循环是否在C#中的第一次迭代中