string l = Console.ReadLine();
try
{
int.Parse(l);
}
catch (FormatException)
{
Console.WriteLine("Invalid input. Please enter 1, 2, or 3.");
}
ご覧のとおり、入力を求めましたが、ユーザーが文字「f」などの非整数の回答を入力すると、catch ステートメントはそれをキャッチしますが、変数「l」がまだ残っているため、その後再び例外をスローします。 「f」に等しい。ヘルプ?