我试图编写一个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();
}
}
}
}
}
}
正如其他人所指出的那样,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] 删除。
我来说两句