我是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