企业发放的奖金根据利润提成。利润(1)低于或等于10万元的,奖金可提10%;利润高于10万元,低于

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了企业发放的奖金根据利润提成。利润(1)低于或等于10万元的,奖金可提10%;利润高于10万元,低于相关的知识,希望对你有一定的参考价值。

企业发放的奖金根据利润提成。利润(1)低于或等于10万元的,奖金可提10%;利润高于10万元,低于20万元(10<I<=20)时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20<I<=40时,低于20万元的部分仍按上述办法提成(下同)。高于20万余的部分按6%提成;40<I<=60时,高于40万元的部分按3%提成;60<I<=100,高于60万元的部分按1.5%提成;I>100时,超过100万元的部分按1%提成。从键盘输入当月利润I,求应发奖金总数。要求:用switch语句编程序.
怎么写啊?急

具体如下,输入的利润我是按圆为单位输入的,在计算的时候转换为万,主要是在计算的时候防止溢出,(当然针对这个及时不转化也不会溢出的),最后得到的奖金再由万圆转换为圆

#include<stdio.h>
int main(void)

double I = 0, Bonus = 0;

printf("Please input Profit I= ");
scanf("%lf", &I);

if(I <= 0)

printf("not bonus!\n");

return 0;


I /= 10000;

switch((int)(I/10))

case 0:
Bonus = I * 0.1;
break;

case 1:
Bonus = 10 * 0.1 + (I - 10) * 0.075;
break;

case 2:
case 3:
Bonus = 10 * 0.1 + 10 * 0.075 + (I - 20) * 0.06;
break;

case 4:
case 5:
Bonus = 10 * 0.1 + 10 * 0.075 + 20 * 0.06 + (I - 40) * 0.03;
break;

case 6:
case 7:
case 8:
case 9:
Bonus = 10 * 0.1 + 10 * 0.075 + 20 * 0.06 + 20 * 0.03 + (I - 60) * 0.015;
break;
default:
Bonus = 10 * 0.1 + 10 * 0.075 + 20 * 0.06 + 20 * 0.03 + 40 * 0.015 + (I - 100) * 0.01;
break;


Bonus = Bonus * 10000;

printf("The Bonus = %lf\n", Bonus);

return 0;
参考技术A 抱歉根据您提供的信息,我行无法定义您的问题,您可详细描述您的问题,以便我行准确回答您的问题。
应答时间:2020-12-03,最新业务变化请以平安银行官网公布为准。
[平安银行我知道]想要知道更多?快来看“平安银行我知道”吧~
https://b.pingan.com.cn/paim/iknow/index.html详情
    官方服务
      官方网站智能问答
参考技术B float calc(int n,float money)
float sum;
switch(n)
case 0:
sum+=money*0.1f;
break;
case 1:
if((int)(money)%10000==0)
sum+=money*0.1f;
else
sum+=calc(0,100000)+(money-100000)*0.075f;

break;
case 2:
if((int)(money)%10000==0)
sum+=calc(0,100000)+(money-100000)*0.075f;
else
sum+=calc(2,200000)+(money-200000)*0.06f;

break;
case 3:
if((int)(money)%10000==0)
sum+=calc(2,200000)+(money-200000)*0.06f;
else
sum+=calc(3,300000)+(money-300000)*0.06f;

break;
case 4:
if((int)(money)%10000==0)
sum+=calc(3,300000)+(money-300000)*0.075f;
else
sum+=calc(4,400000)+(money-400000)*0.03f;

break;
case 5:
if((int)(money)%10000==0)
sum+=calc(4,400000)+(money-400000)*0.03f;
else
sum+=calc(5,500000)+(money-500000)*0.03f;

break;
case 6:
if((int)(money)%10000==0)
sum+=calc(5,500000)+(money-500000)*0.03f;
else
sum+=calc(6,600000)+(money-600000)*0.015f;

break;
default:
sum+=calc(6,600000)+(money-600000)*0.015f;
break;

return sum;

以上是关于企业发放的奖金根据利润提成。利润(1)低于或等于10万元的,奖金可提10%;利润高于10万元,低于的主要内容,如果未能解决你的问题,请参考以下文章

题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万

企业发放的奖金根据利润提成。利润低于或等于100000元的,奖金可提10%; 利润高于100000元

switch企业发放的奖金根据利润提成。利润(i)低于或等于10万元时,奖金可提成10

题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%; 可否用for循环解这道题大佬们

C语言 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于

企业发放的奖金根据利润提成,利润底于或等于10万元时,奖金可提成10%;利润高于10万元,底于20万元时,