【发布时间】:2023-02-23 02:33:45
【问题描述】:
我正在尝试循环以了解用户是否想再次继续执行 prgramm。 我想写一个循环,如果他写的不是是或否,他会再次问他这个问题
using System;
namespace ConsoleApp3
{
class Program
{
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("Enter un number : ");
int day = int.Parse(Console.ReadLine());
int dayToTest = (day % 7);
switch (dayToTest)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
case 3:
Console.WriteLine("Wednesday");
break;
case 4:
Console.WriteLine("Thursday");
break;
case 5:
Console.WriteLine("Friday");
break;
case 6:
Console.WriteLine("Saturday");
break;
case 7:
Console.WriteLine("Sunday");
break;
}
Console.WriteLine(" would you like to reexecute the programmn? yes or no");
string decision = Console.ReadLine();
if (decision.ToLower() == "no")
{
break;
}
else
{
while (decision.ToLower() != "yes")
}
}
}
}
}
你能帮我吗?
【问题讨论】:
-
可能无关:x % 7 在 [0..6] 中而不是 [1..7] 中。
-
当我编写 CLI 工具时,我倾向于使用
ReadKey来回答是/否问题,因此用户只需键入“y”或“n”,而不管是 y 还是 Y 还是 n 还是 N .. . -
你的问题是什么?代码对我来说看起来不错,您只需要删除带有
while循环的else块。 -
while (decision.ToLower() != "yes")废弃整个else块,然后它应该运行。