0%

求利润

文章时效性提示

本文发布于 500 天前,部分信息可能已经改变,请注意甄别。

题目:企业发放的奖金根据利润提成。
利润低于或等于10万元时,奖金可提10%;
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%;
高于100万元时,超过100万元的部分按1%提成。
从键盘输入当月利润数,求应发放奖金总数?

思路:根据输入的利润数,使用if语句判断利润的范围,然后根据不同情况进行计算。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <stdio.h>
int main() {
    int input = 0;
    int bonus = 0;
    printf("请输入利润:->");
    scanf("%d",&input);
    if (input<=100000)//利润低于或等于10万元时,奖金可提10%;
    {
        bonus = input * 0.1;
    }
    else if (input<=200000)//利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
    {
        bonus = 100000 * 0.1 + (input - 100000) * 0.075;
    }
    else if (input<=400000)//20万到40万之间时,高于20万元的部分,可提成5%;
    {
        bonus = 100000 * 0.1 + 100000 * 0.075 + (input - 200000) * 0.05;
    }
    else if (input<=600000)
    {
        bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + (input - 400000) * 0.03;
    }
    else if (input<=1000000)//60万到100万之间时,高于60万元的部分,可提成1.5%;
    {
        bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + (input - 600000) * 0.015;
    }
    else//高于100万元时,超过100万元的部分按1%提成。
    {
        bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 +(input - 1000000) * 0.01;
    }
    printf("%d\n",bonus);
    return 0;
}

改进上面的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
int main() {
    int input = 0;
    int bonus = 0;
    int bonus1 = 100000 * 0.1;
    int bonus2 = bonus1 + 100000 * 0.075;
    int bonus3 = bonus2 + 200000 * 0.05;
    int bonus4 = bonus3 + 200000 * 0.03;
    int bonus5 = bonus4 + 400000 * 0.015;
    printf("请输入利润:->");
    scanf("%d",&input);
    if (input<=100000)//利润低于或等于10万元时,奖金可提10%;
    {
        bonus = input * 0.1;
    }
    else if (input<=200000)//利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
    {
        bonus = bonus1 + (input - 100000) * 0.075;
    }
    else if (input<=400000)//20万到40万之间时,高于20万元的部分,可提成5%;
    {
        bonus = bonus2 + (input - 200000) * 0.05;
    }
    else if (input<=600000)
    {
        bonus = bonus3 + (input - 400000) * 0.03;
    }
    else if (input<=1000000)//60万到100万之间时,高于60万元的部分,可提成1.5%;
    {
        bonus = bonus4 + (input - 600000) * 0.015;
    }
    else//高于100万元时,超过100万元的部分按1%提成。
    {
        bonus = bonus5 +(input - 1000000) * 0.01;
    }
    printf("%d\n",bonus);
    return 0;
}