例如,當我的程序要求輸入一個數字並輸入一個字母時,程序退出。那麼,如何在輸入信件時不做任何事情? 我有「詮釋」或「串」,但不是「雙打」這是真的絆倒了我,我也不太明白怎麼連那些固定當我輸入一個字母而不是一個變量時,我遇到了簡單的計算器程序突然中斷的問題
static void Main(string[] args)
{
Console.WriteLine("type 'Exit' to leave this program.");
Console.ReadLine();
Console.Clear();
Valuechoice: Console.WriteLine("Please choose a number.");
double value1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Please choose a second Number.");
double value2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("What would you like to do to these numbeers?");
Console.WriteLine("Multiply");
Console.WriteLine("Divide");
Console.WriteLine("Add");
Console.WriteLine("subtract");
string operation = Console.ReadLine();
Console.WriteLine();
Console.Clear();
if (operation == "Multiply")
{
double total1;
total1 = (value1 * value2);
Console.WriteLine(total1);
Console.ReadLine();
Console.Clear();
goto Valuechoice;
}
if (operation == "Divide")
{
double total2;
total2 = (value1/value2);
Console.WriteLine(total2);
Console.ReadLine();
Console.Clear();
goto Valuechoice;
}
if (operation == "Add")
{
double total3;
total3 = (value1 + value2);
Console.WriteLine(total3);
Console.ReadLine();
Console.Clear();
goto Valuechoice;
}
if (operation == "Subtract")
{
double total4;
total4 = (value1 - value2);
Console.WriteLine(total4);
Console.ReadLine();
Console.Clear();
goto Valuechoice;
}
if (Console.ReadLine() == "Exit")
{
Environment.Exit(0);
}
只需讀取用戶輸入的'String'然後確定它是否是試圖將其轉換爲一個'Double' – 2013-03-02 22:38:25
這個問題確實是之前的一封信太局部化了。你最好用更一般的形式來表達你的問題。 – 2013-03-02 22:40:56
您也可以捕獲Convert.ToDouble引發的異常。 – 2013-03-02 22:42:53