遇到IF ELSE语句问题

时间:2012-11-16 00:11:07

标签: c# if-statement percentage

我正在尝试为课程做作业,而我在弄清楚如何让婚姻状态进入数学公式方面遇到了一些麻烦。请记住,我需要保持代码简单,并且必须使用if else语句,因为这是我在课堂上的第3周。提前致谢

这是作业,所以你可以更好地看到我想要做的事情。

  

您需要设计一个应用程序,提醒用户他/她的小时工资率,工作时间,以及他或她是单身,已婚,离婚还是丧偶。然后它将计算用户的总薪水和净工资。如果用户工作时间超过40小时,加班时间将按常规费率的1.5倍计算,并单独显示。如果用户已婚,则使用15%的固定税率。如果用户是单身,使用22%,如果离婚,使用23%,如果丧偶,使用13%(我意识到这些不太现实)

到目前为止,这是我的代码:

double hourlyRate;
int hoursWorked;
string marriageStatus;
double Percent;

Console.WriteLine("Enter your Pay Rate");
Convert.ToDouble(Console.ReadLine());

Console.WriteLine("Enter the hours you worked this week");
Convert.ToInt16(Console.ReadLine());

Console.WriteLine("Enter your Marital status: M for married, S for single, D for divorced and W for widow");

if (marriageStatus == M)
    percent = .15

3 个答案:

答案 0 :(得分:1)

您没有根据用户输入设置marriageStatus变量。

所以你需要:

marriageStatus = Console.ReadLine();

if(!String.IsNullOrEmpty(marriageStatus)) {
marriageStatus = marriageStatus.ToUpper();
if (marriageStatus == "M") {
    //do married stuff
} else if (marriageStatus =="W") {
  //do widowed stuff
} else if (marriageStatus == "S") {
  // do Single Stuff
} else if (marriageStatus == "D") {
  // do divorced stuff
} else {
  // invalid input - error handling
}
}

答案 1 :(得分:0)

一些问题:

  1. 您正在从控制台读取 - 但不能将该输入存储在任何位置。您需要将读取的内容放入变量中。
  2. 在if语句中,您要将变量mariageStatus与变量M进行比较,但M不存在。你想在这里使用的是将它与完全不同的文字"M"进行比较。

答案 2 :(得分:0)

这会将用户输入存储到字符串

string input = Console.ReadLine();

然后你可以去

if(input == "m" || input == "M")
{ percentage = 0.15;}
else if (input == "s" || input == "S")
{  percentage = .50; } 
else if (input = "w" || input == "W")
{percentage = .90; }
else
{
//there was an error
percentage = 0.0;
}