我是C#的新手。我在控制台应用程序中有一个“菜单”。现在,当我完成从菜单中选取项目并执行该菜单项目所需的操作时,我想再次循环显示菜单,以便用户可以选择不同的菜单项目。我在菜单上有一个退出,我只想使用它退出。我试过一段时间循环,但这不起作用。它在菜单项被选中并且所选项目代码已经运行之后关闭应用程序。我究竟做错了什么?循环切换语句
static void Main()
{
int input = 0;
while (true)
{
Console.WriteLine("MENU");
Console.WriteLine("Please enter the number that you want to do:");
Console.WriteLine("1. Do thing A");
Console.WriteLine("2. Do thing B");
Console.WriteLine("3. Do thing C");
Console.WriteLine("4. Do thing D");
Console.WriteLine("5. Do thing E");
Console.WriteLine("6. Do thing F");
Console.WriteLine("7. Exit");
int menuchoice = int.Parse(Console.ReadLine());
switch (menuchoice)
{
case 1:
Console.WriteLine("Thing A has been done");
break;
case 2:
Console.WriteLine("Thing B has been done");
break;
case 3:
Console.WriteLine("Thing C has been done");
break;
case 4:
Console.WriteLine("Thing D has been done");
break;
case 5:
Console.WriteLine("Thing E has been done");
break;
case 6:
Console.WriteLine("Thing F has been done");
break;
case 7:
Environment.Exit; //edit
break;
default:
Console.WriteLine("Sorry, invalid selection");
break;
}
input++;
if (input < 30)
continue;
else
break;
}
}
任何人都可以请帮忙吗?提前致谢!
编辑:我知道那个“Console.Exit”不起作用。我只是把它放在那里,以便控制台必须在那里退出。我的问题是,在选择选项并选择了选项代码后,我需要每次循环整个菜单。我只想使用退出退出。但此时菜单不会循环,控制台在选择了1个选项并且选项代码已经运行后关闭。
编辑:当你开始你的程序,你按1然后回车会发生什么?这是真正的问题,菜单似乎没有循环。在我启动我的程序后,按1然后返回代码,情况1运行完美,但随后控制台关闭。如果我再次启动控制台,并且此时按2,则情况2中的代码也可以完美运行,但控制台再次关闭。我已经测试过我所有的情况,并且所有的情况都很完美。
什么问题? (用Environment.Exit()替换Console.Exit) – 2010-09-22 08:25:20
关于你的编辑:对我来说你的示例循环和我所期望的一样。当你开始你的程序('Environment.Exit'替换'Console.Exit')时会发生什么情况,你按1然后按Return?我怀疑你发布的示例与你正在运行的代码有些不同(显然是这样,因为上面的示例没有编译)。 – 2010-09-22 08:45:15
我知道那个“Console.Exit”不起作用。我只是把它放在那里,以便控制台必须在那里退出。我试过Environment.Exit(),但似乎也没有工作。 – CSharpSuzie 2010-09-22 08:46:08