使用if语句切换C#

时间:2014-10-20 00:02:27

标签: c#

我正在尝试编写一个程序,模拟用户输入选项的银行的初始电话:
•按1表示英语,2表示西班牙语
- 如果英语(1) »按1表示余额,2表示付款,3表示转账,4表示与某人交谈 •(开关盒)
•1:“余额”•2:“付款”•...... -Else,如果西班牙语(2)
•(开关盒)
•1:“el balance”•2:“el payment”•...... ...... El ...

这是我到目前为止,我无法让开关运行?

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;
}

是否有人愿意指引我朝着正确的方向前进?

3 个答案:

答案 0 :(得分:2)

选择变量始终为0.您需要让switch语句生效。在switch语句之前尝试这个:

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

答案 1 :(得分:1)

您没有收到用户的任何意见。

你需要像

这样的东西
int choice = (int) Console.ReadLine();
在你的switch语句之前

有关如何使用Console.ReadLine()函数的详细信息,请参阅here

答案 2 :(得分:0)

在切换语句之前添加

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

并将其用于switch satement以获得输出,以防他们输入其他值:

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