1150 - C语言5.12
企业发放的奖金根据利润提成。利润I低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元(100000<I≤200000)时,其中10万元按10%提成,高于10万元的部分,可提成7.5%;200000 <I≤400000时,其中20万元仍按上述办法提成(下同),高于20万元的部分按5%提成;400000<I≤600000时,高于40万元的部分按3%提成;600000<I≤1000000时,高于60万的部分按1.5%提成;I>1000000时,超过100万的部分按1%提成。输入当月利润I,求应发放奖金总数。
Input
一个整数I代表月利润。
Output
输出奖金总数,并保留2位小数。
请注意行尾输出换行。
Examples
Input
234000
Output
19200.00
Solution C
#include<stdio.h> int main(){ int I; double b; scanf("%d",&I); if(I<=100000) b=I*0.1; if(I>100000&&I<=200000) b=100000*0.1+(I-100000)*0.075; if(I>200000&&I<=400000) b=100000*0.1+100000*0.075+(I-200000)*0.05; if(I>400000&&I<=600000) b=100000*0.1+100000*0.075+200000*0.05+(I-400000)*0.03; if(I>600000&&I<=1000000) b=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(I-600000)*0.015; if(I>1000000) b=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(I-1000000)*0.01; printf("%.2lf",b); return 0; }
Solution C++
#include <stdio.h> int main() { int i; float bonus, bon1, bon2, bon4, bon6, bon10; bon1 = 100000 * 0.1; /*利润为10万元时的奖金*/ bon2 = bon1 + 100000 * 0.075; /*利润为20万元时的奖金*/ bon4 = bon2 + 100000 * 0.05; /*利润为40万元时的奖金*/ bon6 = bon4 + 100000 * 0.03; /*利润为60万元时的奖金*/ bon10 = bon6 + 400000 * 0.015; /*利润为100万元时的奖金*/ scanf("%d", &i); if (i <= 100000) bonus = i * 0.1; /*利润在10万元以内按0.1提成奖金*/ else if (i <= 200000) bonus = bon1 + (i - 100000) * 0.075; /*利润在10万至20万元时的奖金*/ else if (i <= 400000) bonus = bon2 + (i - 200000) * 0.05; /*利润在20万至40万元时的奖金*/ else if (i <= 600000) bonus = bon4 + (i - 400000) * 0.03; /*利润在40万元至60万元时的奖金*/ else if (i <= 1000000) bonus = bon6 + (i - 600000) * 0.015; /*利润在60万元至100万元时的奖金*/ else bonus = bon10 + (i - 1000000) * 0.01; /*利润在100万元以上时的奖金*/ printf("%.2f\n",bonus); return 0; }