我有一個簡單的程序來平均十(用戶定義)的數字,然後打印結果。在程序結束時,我想打印Would you like to average a new set of numbers? (Y/N)
如果用戶輸入y
比我希望程序從頂部再次執行。如果用戶輸入n
比程序應該關閉。我試過研究這個,但只找到了讓整個控制檯退出並重新打開的方法,這不是我想要的。VB.NET有整個程序循環,直到用戶決定退出?
0
A
回答
1
檢測用戶已經進入你有幾個選擇:
Console.ReadKey()
將讀取下一個按鍵。然後,您可以使用簡單的Select Case
分支來選擇要執行的操作。
您還可以使用:
Console.ReadLine()
將返回一個字符串(在用戶按下Enter鍵)。然後,您可以使用一個簡單的if語句來決定什麼是字符串(和重複查詢,如果不是「Y」或「N」以外的東西被輸入。)
例子:
Shared Sub Main()
While True
AverageNums()
Console.WriteLine("Do you want to run again? (Y/N)")
Dim key = Console.ReadKey()
If key.Key = ConsoleKey.N Then
Exit While
End If
End While
End Sub
Shared Sub AverageNums()
' ...
End Sub
0
我的反應可能在遊戲中稍晚,但我認爲我會分享一個實現try-catch方法的緊湊版本。
Sub Main()
Do
Try
Console.Write("Enter a value: ")
Console.ReadLine()
'...
SomeProcedure()
Catch ex As Exception
Console.WriteLine(ex.ToString)
Finally
Console.Write("Enter another value? (N for No) ")
End Try
Loop Until Console.ReadLine() = "N"
End Sub
Sub SomeProcedure()
'...
End Sub
相關問題
- 1. 循環程序,直到0(退出)(java)
- 2. 通過退出應用程序退出無限循環
- 3. VBA子程序不退出循環
- 4. 用戶按ENTER鍵退出while循環
- 5. 退出循環
- 6. 保持運行的程序,直到用戶輸入退出
- 7. 立刻退出整個應用程序
- 8. vb.net子程序沒有更新模塊級別的變量,直到退出sub
- 9. 當用戶輸入退出或退出時打破循環c#
- 10. 如何將用戶循環回到具有兩個循環的程序開始
- 11. 編寫一個程序,在一個循環中請求一個整數用戶到用戶打印出0
- 12. 退出For循環
- 13. 循環如果並且直到結果發現然後退出
- 14. 多個退出的決定
- 15. VB.NET選框進度直到進程退出
- 16. 做...循環直到有多個條件
- 17. while循環和While循環的退出
- 18. 如何循環我的整個程序?
- 19. C:使用pthreads和程序不退出for循環
- 20. 正在運行for循環時退出應用程序
- 21. 退出時重定向循環僅
- 22. 程序結束時出現循環問題,無法退出
- 23. Mindstorm NXT編程循環退出條件
- 24. 在matlab退出整個循環和更多
- 25. 從完整的應用程序退出
- 26. 如何退出Windows Phone 7.8應用程序中的循環和應用程序?
- 27. 保持進程運行直到用戶退出?
- 28. 微控制器編程 - 程序不能退出循環
- 29. 雖然循環沒有退出
- 30. bash:退出腳本循環
如果'ConsoleKey.Key == ConsoleKey.Y'能不能遞歸調用'Main(args)'? – SpaceBison 2013-03-05 22:01:41
你能詳細說明嗎?我只是教自己的VB.NET,所以我不完全熟悉很多技術。 – Matt 2013-03-05 22:04:05
我是一個C#人,所以我提供的任何代碼都不會很熟悉,但是在控制檯應用程序中,通常會有一個'static void Main(string [] args)'這是控制檯應用程序的入口 - 所以當你可以調用任何你打來的電話,詢問用戶輸入,如果他們按下Y鍵,再次調用Main方法重新開始...... – SpaceBison 2013-03-05 22:05:34