企业发放的奖金根据利润提成的编程问题(c语言)

企业发放的奖金根据利润提成的编程问题(c语言),第1张

有个很明显的错误。

比如利润是45万。

那么应该是由以下几个部分组成:

1100000 这部分提成10%,也就是1万

2100000-200000之间的10万,这部分提成75%,也就是7500

3200000-400000之间的20万,这部分提成5%,也就是1万

4高于40万的5万,提成3%,也就是1500

加起来,是3万。

//运行结果

F:\c_work>aexe

250000

21249

没问题啊,你所说的出错是指的什么问题呢?

#include <stdioh>

#include <stdlibh>

int main()

{

int a;

scanf("%d",&a);

if(a<100000)

a=a01;

//else if(100000<a<=200000)  //这里出错了

else if(a>10000 && a<=200000)

a=10000+(a-100000)0075;

else if(a<=400000)

a=17500+(a-200000)005;

else if(a<=600000)

a=27500+(a-400000)003;

else if(a<=1000000)

a=33500+(a-600000)0015;

else if(a>1000000)

a=39500+(a-1000000)001;

printf("%d",a);

return 0;

}

#include <stdioh>

int const bounds[] = { 0, 100000, 200000, 400000, 600000, 1000000 };

double const rates[] = {01, 0075, 005, 003, 0015, 001 };

int main()

{

    int lirun;

    double jiangjin = 00;

    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语言作业一模一样。

下边是我的程序,你可以看一下。

这个题的要求的输入单位是 万元。

#include<stdioh>

void main ()

{

int I;

double M;

printf("当月利润为:");

scanf("%d",&I);

switch ((I-1)/10)

{

case 0:

M=I01;break;

case 1:

M=1+(I-10)0075;break;

case 2:

case 3:

M=175+(I-20)005;break;

case 4:

case 5:

M=275+(I-40)003;break;

case 6:

case 7:

case 8:

case 9:

M=335+(I-60)0015;break;

default :

M=395+(I-100)001;break;

}

printf("奖金总数为:%3f\n",M);

}

以上就是关于企业发放的奖金根据利润提成的编程问题(c语言)全部的内容,包括:企业发放的奖金根据利润提成的编程问题(c语言)、这个C语言利润提成的问题这个程序输入250000的时候为什么出错、编写C语言程序,通过主程序中调用自定义函数的方式实现从键盘输入当月利润值,根据此规则输出发放奖金等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9853215.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存