cwh6319 2016-12-21 11:19 采纳率: 100%
浏览 1079
已采纳

一个简单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%提成,从键盘输入当月利润I,求应发放奖金总数?
程序如下:
int main()
{
long int i;
float b1,b2,b4,b6,b10,b11,b;
scanf("%ld", &i);
b1 = i*0.1;
b2 = b1 + (i-100000) *0.075;
b4 = b2 + (i-200000) *0.05;
b6 = b4 + (i-400000) *0.03;
b10 = b6 + (i-600000) *0.015;
b11 = b10 + (i-1000000)*0.01;
if(i<=100000)
b = b1;
else if(i<=200000)
b = b2;
else if(i<=400000)
b = b4;
else if(i<=600000)
b = b6;
else if(i<=1000000)
b = b10;
else
b = b11;

printf("bonus=%ld", b);

}
为什么一运行输出就是bonus=0?
求高手解答

  • 写回答

4条回答 默认 最新

  • SZL-C 2016-12-21 15:11
    关注
     int main()
    {
        long int i;
        double b1, b2, b4, b6, b10, b11, b;
        scanf("%ld", &i);
        b1 = i*0.1;
        b2 = b1 + (i - 100000) *0.075;
        b4 = b2 + (i - 200000) *0.05;
        b6 = b4 + (i - 400000) *0.03;
        b10 = b6 + (i - 600000) *0.015;
        b11 = b10 + (i - 1000000)*0.01;
        if (i <= 100000)
            b = b1;
        else if (i <= 200000)
            b = b2;
        else if (i <= 400000)
            b = b4;
        else if (i <= 600000)
            b = b6;
        else if (i <= 1000000)
            b = b10;
        else
            b = b11;
        printf("bonus=%lf\n", b);
        system("pause");
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)