yhzxwn 发表于 2011-2-28 18:52:14

c语言小练习-题目2

题目:企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?

yhzxwn 发表于 2011-2-28 18:53:32

1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。

yhzxwn 发表于 2011-2-28 19:24:15

本帖最后由 yhzxwn 于 2011-2-28 19:33 编辑

#include <stdafx.h>
void main()
{
long int i;
int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
bonus1=100000*0.1;
bonus2=bonus1+100000*0.075;
bonus4=bonus2+200000*0.05;
bonus6=bonus4+200000*0.03;
bonus10=bonus6+400000*0.015;
printf("amount\n");
scanf("%d",&i);
if(i<=100000)
        bonus=i*0.1;
        else if(i<=200000)
                bonus=bonus1+(i-100000)*0.75;
                else if(i<=400000)
                bonus=bonus2+(i-200000)*0.05;
                        else if(i<=600000)
                        bonus=bonus4+(i-400000)*0.03;
                                else if(i<=1000000)
                                bonus=bonus6+(i-600000)*0.15;
                                        else
                                        bonus=bonus10+(i-1000000)*0.1;
                                                printf("amount=%d\n",i);
                                                printf("bonus=%d\n",bonus);
}

追梦1航海 发表于 2014-3-15 13:28:29

#include <stdio.h>
int main()
{
      double profit,award;
      printf("请输入利润数目,单位万\n");
      scanf("%f",&profit);
      if(profit<=10)
                award=award*profit*0.1;
    else if(profit>10&&profit<=20)      
                award=10*0.1+(profit-10)*0.075;
      else if(profit>20&&profit<=40)
                award=10*0.1+10*0.75+(profit-20)*0.05;
      else if (profit>40&&profit<=60)
                award=10*0.1+10*0.75+20*0.05+(profit-40)*0.03;
      else if(profit>60&&profit<=100)
                award=10*0.1+10*0.75+20*0.05+20*0.03+(profit-60)*0.015;
      else if(profit>100)
                award=10*0.1+10*0.75+20*0.05+20*0.03+40*0.015+(profit-100)*0.01;
      printf("总共奖金是%f\n",award);
      return 0;
}
页: [1]
查看完整版本: c语言小练习-题目2