主题:我是新手,有一道题求助于高手
电编数者
[专家分:10] 发布于 2008-03-06 00:47:00
[b]题目是:企业发放奖金根据利润提成,利润低于或等于10000元的奖金可提10%,利润高于100000元,低于200000时,低于100000元的部分按10%提成,高于100000元的部分,可提成7.5%;200000<I<=400000时,低于200000元的部分仍按上述法提成(下同).高于200000元的部分按5%提成,400000<I<=600000元时,高于400000元的部分3%提成,600000<I<=1000000时,高于600000元的部分按1.5%提成:I>100000时,超过100000元的部分按1%提成,从键盘输入当月利润I,求应发奖金总数[/b]
回复列表 (共9个回复)
沙发
电编数者 [专家分:10] 发布于 2008-03-06 00:50:00
是用C语言编的.
多谢
请高手指教
板凳
电编数者 [专家分:10] 发布于 2008-03-07 14:39:00
为什么没有人作这道题,是因为这道题太难了吗?
3 楼
amour [专家分:370] 发布于 2008-03-07 14:43:00
建议自己做
用switch做应该就可以了,设个变量比方说: cin>>temp a=temp/100000,
然后
switch(a)
case:...
case:...
4 楼
youthchen [专家分:100] 发布于 2008-03-07 21:58:00
根据不同的条件用不同的表达式就行了
比如:低于等于10000时
if(x<=10000)
profit=x*10%
以此类推
5 楼
站在困难上 [专家分:0] 发布于 2008-03-10 22:18:00
要是你不闲麻烦用函数也行, 刚学1个月见笑了。建议你处理一个问题用多种方法
这样会学的快点,
#include "stdio.h"
shi1( long fg)
{ long hong1;
hong1=fg*0.1;
return(hong1);
}
er1( long fg)
{ long hong1,hong2,hong3;
hong1=100000*0.1;
hong2=(fg-100000)*0.075;
hong3=hong1+hong2;
return(hong3);
}
si1( long fg)
{ long hong1,hong2,hong3,hong4;
hong1=100000*0.1;
hong2=100000*0.075;
hong3=(fg-200000)*0.05;
hong4=hong1+hong2+hong3;
return(hong4);
}
liu1( long fg)
{ long hong1,hong2,hong3,hong4,hong5;
hong1=100000*0.1;
hong2=100000*0.075;
hong3=200000*0.05;
hong4=(fg-400000)*0.03;
hong5=hong1+hong2+hong3+hong4;
return(hong5);
}
yibai1( long fg)
{ long hong1,hong2,hong3,hong4,hong5,hong6;
hong1=100000*0.1;
hong2=100000*0.075;
hong3=200000*0.05;
hong4=200000*0.03;
hong5=(fg-600000)*0.015;
hong6=hong1+hong2+hong3+hong4+hong5;
return(hong6);
}
yibai12( long fg)
{ long hong1,hong2,hong3,hong4,hong5,hong6,hong7;
hong1=100000*0.1;
hong2=100000*0.075;
hong3=200000*0.05;
hong4=200000*0.03;
hong5=400000*0.015;
hong6=(fg-1000000)*0.01;
hong7=hong1+hong2+hong3+hong4+hong5+hong6;
return(hong7);
}
main()
{
long t, x;
printf("请输入您的果实本月收入是多少,请以万单位输入.\n");
scanf("%ld",&x);
if(x<=100000) {t=shi1(x);printf("%ld\n",t);}
else
if(x>=100000&&x<=200000) {t=er1(x);printf("%ld\n",t);}
else
if(x>=100000&&x<=400000) {t=si1(x);printf("%ld\n",t);}
else
if(x>=400000&&x<=600000) {t=liu1(x);printf("%ld\n",t);}
else
if(x>=600000&&x<=1000000) {t=yibai1(x);printf("%ld\n",t);}
else
if(x>1000000) {t=yibai12(x);printf("%ld\n",t);}
}
6 楼
yeqth125 [专家分:0] 发布于 2008-03-11 22:39:00
直接用switch语句拉,用那个函数有点画蛇添足了。太麻烦拉
7 楼
电编数者 [专家分:10] 发布于 2008-03-13 22:48:00
谢谢大家.
我已解决了.
8 楼
xiaolu0511 [专家分:0] 发布于 2010-06-13 15:21:00
见到高手了,谢谢了
9 楼
yu15021284452 [专家分:0] 发布于 2010-06-20 21:11:00
我晕。。学习1个月就那么厉害天啊,,我学了几天,,啥也没看懂。。什么原因啊
我来回复