企业 奖金 编程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了企业 奖金 编程相关的知识,希望对你有一定的参考价值。

题目是:
企业发放的奖金根据利润提成。利润I低于或等于100000元的,奖金可提10%;利润高于100000元,低于200000元(100000 <I≤200000=时。低于100000元的部分按10%提成,高于100000元的部分,可提成7.5%;200000<I≤400000时,低于 200000元的部分仍按上述办法提成(下同)。高于200000元的部分按5%提成;400000<I≤600000元时,高于400000元的部分按 3%提成;600000<I≤1000000时,高于600000元的部分按1.5%提成;I>1000000时,超过1000000元的部分按1%提成。从键盘输入当月利润I,求应发奖金总数。

我做出来的源代码是:
#include <stdio.h>
main()

long i;
double b,b1,b2,b4,b6,b10,other;
sign:printf("请输入员工利润:");
scanf("%ld",&i);

b1=100000*0.1; /*利润为10W时所得的奖金*/
b2=(200000-100000)*0.075+b1; /*利润为20W时所得的奖金*/
b4=(400000-200000)*0.05+b2; /*利润为40W时所得的奖金*/
b6=(600000-400000)*0.03+b4; /*利润为60W时所得的奖金*/
b10=(1000000-600000)*0.015+b6; /*利润为100W时所得的奖金*/
other=(i-1000000)*0.01+b10;

if(i<=100000)

b=i*0.1;

else if(i<=200000 && i>100000)

b=(i-100000)*0.075+b1;

else if(i<=400000 && i>200000)

b=(i-200000)*0.05+b2;

else if(i<=600000 && i>400000)

b=(i-400000)*0.03+b4;

else if(i<=1000000 && i>600000)

b=(i-600000)*0.015+b6;

else (i>1000000);

b=other;

printf("该员工所得奖金为:%.2f\n\n",b);
goto sign;


最后的结果不对哦···想了很久都不知道是什么原因,请高手赐教
呃····我按照你的方法试了下,如果加上了if(i=='#')
break;
的话,VC会提示错误哦,说非法使用BREAK

参考技术A #include <stdio.h>
void main()

long i;
double b,b1=0,b2=0,b4=0,b6=0,b10=0,other=0;
sign:printf("请输入员工利润:");
scanf("%ld",&i);
if(i=='#')
break;

b1=100000*0.1; /*利润为10W时所得的奖金*/
b2=(200000-100000)*0.075+b1; /*利润为20W时所得的奖金*/
b4=(400000-200000)*0.05+b2; /*利润为40W时所得的奖金*/
b6=(600000-400000)*0.03+b4; /*利润为60W时所得的奖金*/
b10=(1000000-600000)*0.015+b6; /*利润为100W时所得的奖金*/
other=(i-1000000)*0.01+b10;

if(i<=100000)

b=i*0.1;

else if(i<=200000 && i>100000)

b=(i-100000)*0.075+b1;

else if(i<=400000 && i>200000)

b=(i-200000)*0.05+b2;

else if(i<=600000 && i>400000)

b=(i-400000)*0.03+b4;

else if(i<=1000000 && i>600000)

b=(i-600000)*0.015+b6;

else if(i>1000000)

b=other;

printf("该员工所得奖金为:%.2f\n\n",b);
goto sign;



在原代码中应该尽量少使用goto 语句,在你的代码中没跳出goto语句的出口地址,我加了判断语句,若输入'#'号折判断输入结束,在你的这个语句
else (i>1000000);

b=other;

错了(i>1000000); 不可以有个;号本回答被提问者采纳

以上是关于企业 奖金 编程的主要内容,如果未能解决你的问题,请参考以下文章

java 企业发放的奖金根据利润提成

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

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

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

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

C语言 “企业发放的奖金根据利润提成” 的问题