为了账号安全,请及时绑定邮箱和手机立即绑定

接慕姜的一个关于用switch做销售提成的问题

接慕姜的一个关于用switch做销售提成的问题

C C# C++
边防连 2017-09-13 19:51:33
switch-case计算销售提成慕姜100w<=利润<110w部分提:1% 60w<=利润<100w部分提:1.5%40w<=利润<60w部分提:3%20w<=利润<40w部分提:5%10w<=利润<20w部分提:7.5%利润<10w部分提:10%假定利润额不会超过110w(110w以上部分不考虑)以下是我这个小白白写的,错的,只能输出第一个switch,其他数值可以运行但什么都不输出,求大神详解( ▼-▼ )using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ticheng{    class Program    {        static void Main(string[] args)        {            double bonus = 1000000;            double one=0.01;            double two=0.015;            double three=0.03;            double four=0.05;            double five=0.075;            double six=0.1;            char times = '*';            if (bonus >= 1000000 && bonus <= 1100000)            {                switch (times)                {                    case '*': Console.Write(bonus * one); break;                }                 if(bonus>=600000&&bonus<1000000)                {                    switch(times)                    {                        case '*': Console.Write(bonus * two); break;                    }                    if (bonus >= 400000 && bonus < 600000)                    {                        switch (times)                        {                            case '*': Console.Write(bonus * three); break;                          }                        if (bonus >= 200000 && bonus < 400000)                        {                            switch (times)                            {                                case '*': Console.Write(bonus * four); break;                             }                            if (bonus >= 100000 && bonus < 200000)                            {                                switch (times)                                {                                    case '*': Console.Write(bonus * five); break;                                 }                                if (bonus < 100000)                                {                                    switch (times)                                    {                                        case '*': Console.Write(bonus * six); break;                                     }                                    if (bonus > 1100000)                                        Console.WriteLine("老板让给你!");                                }                                                                }                                                        }                    }                }            }        }    }}
查看完整描述

1 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

 if (bonus >= 1000000 && bonus <= 1100000)
   {
    switch (times)
  {
   case '*': Console.Write(bonus * one); break;
   }
  //这里应该有一个}上一种情况结束,下同,其实就是括号的问题
  if(bonus>=600000&&bonus<1000000)
    {
     switch(times)
    {
     case '*': Console.Write(bonus * two); break;
     }

你这里虽然用了switch但是都是无用功,而是用if..else if...if来实现的

查看完整回答
1 反对 回复 2017-09-13
  • 边防连
    边防连
    首先,感谢你的援助,已经能正常运行了,不过要把最底下六个}全部删掉,这个问题是我学到条件运算符看到的,然后去学了一下switch,现学现卖,见笑了,还想请教一个问题,如果只用if-else是怎么做的?if之后如何计算?
  • 边防连
    边防连
    回复 望远:这个问题用switch、if哪个解决比较好?
  • 1 回答
  • 0 关注
  • 1514 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信