c初学小白 2/100道经典编程题

题目:企业发放的奖金根据利润提成。

  • 利润(m)低于或等于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%提成。

从键盘输入当月利润m,求应发放奖金总数?

当70w的时候,你会怎么算?

bonus= 10 0000*10% +10*7.5 +20*5% +20*3+(70 0000-60 0000)*1.5%=

因此,奖金=之前的奖金+(利润-所在利润段的起点)*率

#include <stdio.h>
int main(){
  double p,bonus;
  printf("请输入利润:\n");
  scanf("%1f",&p); 
  if(p<= 10 0000){
    bonus = p*10%;
  }else if(p<=20 0000){    //else if 代表的是 p>10 0000且p<= 20 0000
    bonus = 10 0000*10% + (p-10 0000)*7.5%;
  }else if(p<=40 0000){
    bonus = 10 0000*10%  + 10 0000*7.5% + (p-20 0000)*5%;
  } //写到这里发现太繁琐了,每次都要把前面的奖金重新写一遍,因此决定在前面设置好变量,方便后续使用。

}
// 企业发放的奖金根据利润提成。
#include<stdio.h>
int main()
{
    double i;
    double bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
    printf("你的净利润是:\n");
    scanf("%lf",&i);
    bonus1=100000*0.1;
    bonus2=bonus1+100000*0.075;
    bonus4=bonus2+200000*0.05;
    bonus6=bonus4+200000*0.03;
    bonus10=bonus6+400000*0.015;
    if(i<=100000) {
        bonus=i*0.1;
    } else if(i<=200000) {
        bonus=bonus1+(i-100000)*0.075;
    } 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.015;
    } else if(i>1000000) {
        bonus=bonus10+(i-1000000)*0.01;
    }
    printf("提成为:bonus=%lf",bonus);
 
    printf("\n");
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值