求奖金总数
时间: 1ms 内存:128M
描述:
企业发放的奖金根据利润提成。利润低于或等于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,求应发奖金总数。
输入:
一个整数,当月利润。
输出:
一个整数,奖金。
示例输入:
900
示例输出:
90
提示:
参考答案(内存最优[1092]):
#include <stdio.h>
int main()
{
int a,b;
scanf("%d",&a);
if(a<=100000)b=a*0.1;
if(a>100000&&a<=200000)b=10000+(a-100000)*0.075;
if(a>200000&&a<=400000)b=17500+(a-200000)*0.05;
if(a>400000&&a<=600000)b=27500+(a-400000)*0.03;
if(a>600000&&a<=1000000)b=33500+(a-600000)*0.015;
if(a>1000000)b=39500+(a-1000000)*0.01;
printf("%d",b);
return 0;
}
参考答案(时间最优[0]):
#include <stdio.h>
int main()
{
int n;
double m=0;
scanf("%d",&n);
if(n>1000000)
{
m += (n-1000000)*0.01;
n = 1000000;
}
if(n>600000)
{
m += (n-600000)*0.015;
n = 600000;
}
if(n>400000)
{
m += (n-400000)*0.03;
n = 400000;
}
if(n>200000)
{
m += (n-200000)*0.05;
n = 200000;
}
if(n>100000)
{
m += (n-100000)*0.075;
n = 100000;
}
m += n*0.1;
printf("%d\n",(int)m);
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。