2014-10-20 102 views
-4

我試圖寫一個模擬的初始打電話給銀行一個程序,用戶輸入的選項:
•按1爲英語,2西班牙
- 如果英語(1 ) »按1保持身體平衡,2金,3轉,4人交談
•(開關箱)
•1:‘平衡’•2:‘支付’•... ..
-Else ,如果西班牙語(2)
•(開關櫃)
•1:「電子餘額」•2:「電子支付」•... ..電子...開關與if語句C#

這是我到目前爲止,我無法得到開關運行?

int choice = 0; 
int language; 
const int English = 1; 
//const int Spanish = 2; 

Console.WriteLine("Please select 1 for English"); 
Console.WriteLine("Seleccione 2 para español"); 
language = Convert.ToInt32(Console.ReadLine()); 

// Console.WriteLine("Pulse 1 para el saldo bancario , 2 para el pago, 3 para la transferencia , 4 para hablar con alguien"); 
Console.WriteLine("Press 1 for balance, 2 for payment, 3 for transfer, 4 to talk to someone"); 

switch (choice) 
{ 
    case 1: Console.WriteLine("Balance"); 
    break; 
    case 2: Console.WriteLine("Payment"); 
    break; 
    case 3: Console.WriteLine("Transfer"); 
    break; 
    case 4: Console.WriteLine("Please hold"); 
    break; 
} 

任何人願意指引我朝着正確的方向嗎?

+0

選擇始終爲0,yafter的WriteLine需要READLINE看看用戶輸入了什麼。 – artm 2014-10-20 00:04:39

+0

您是否收到錯誤?可以請你發佈錯誤信息? – 2014-10-20 00:05:22

+0

沒有錯誤,開關只是「踢入」。 – 2014-10-20 00:06:41

回答

2

選擇變量始終爲0.您需要獲取switch語句才能正常工作。在您的switch語句之前嘗試以下操作:

choice = Convert.ToInt32(Console.ReadLine()); 
1

您沒有接受來自用戶的任何輸入。

你需要你的開關語句之前類似

int choice = (int) Console.ReadLine(); 

。如何使用Console.ReadLine()函數的更多信息,請參閱here

0

switch語句前加上

choice = Convert.ToInt32(Console.ReadLine()); 

,還可以使用此爲您的switch satement有一個輸出的情況下,他們輸入其他值:

default: Console.WriteLine("Invalid input"); 
          break;