编写C语言程序,通过主程序中调用自定义函数的方式实现从键盘输入当月利润值,根据此规则输出发放奖金

某企业对员工利润提成按照以下规则:
利润(I)低于或等于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%提成。
通过主程序中调用自定义函数的方式实现从键盘输入当月利润值,根据此规则输出发放奖金总数。

#include <stdio.h>
int const bounds[] = { 0, 100000, 200000, 400000, 600000, 1000000 };
double const rates[] = {0.1, 0.075, 0.05, 0.03, 0.015, 0.01 };
int main()
{
    int lirun;
    double jiangjin = 0.0;
    printf("请输入利润: ");
    scanf("%d", &lirun);
    int i = sizeof(bounds) / sizeof(int) - 1;
    for(; i >= 0; --i) {
        if(lirun > bounds[i]) {
            jiangjin += (lirun - bounds[i]) * rates[i];
            lirun = bounds[i];
        } 
    }
    printf("奖金为: %.2lf\n", jiangjin);
    return 0;
}

追问

这是c语言程序吗

追答

当然是 c 语言啦。

追问

可编译出来有错误

追答

修改了。那你编译器太老了,把 变量申明放在 for 循环前面吧。

温馨提示:答案为网友推荐,仅供参考