Vscode写c语言的练习

/********************************************************************************

  • Description: 企业发放的奖金根据利润提成。利润(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, 求应发放奖金总数?
    1.代码自动测试,边界可以指定,
    2.第二个代码调理更明确,效率因该会更好
    ********************************************************************************/
# include <stdio.h>
# include <unistd.h>
int main(void)
{
   int num=0;
   for(int a=0; a<=2000000; a+=1)               //指定测试边界
   {
      
         long int  bonus, bonus1, bonus2, bonus4, bonus6, bonus10;
         long int bonus_1,bonus_2,bonus_4,bonus_6,bonus_10,bonus_0;
         long int i;
         printf("a=%d \n", a);
         i=bonus=a;                             //把a的值赋给bonus,进行一个循环
         /************** first 根据题目直接硬写 **************/
         bonus1 = 100000 * 0.1+ (bonus-100000)*0.075;
         bonus2 = 100000*0.1+ 100000*0.075+(bonus-200000)*0.05;
         bonus4 = 100000*0.1+ 100000*0.075+200000*0.05+(bonus-400000)*0.03;
         bonus6 = 100000*0.1+ 100000*0.075+200000*0.05+200000*0.03+(bonus-600000)*0.015;
         bonus10 =100000*0.1+ 100000*0.075+200000*0.05+200000*0.03+400000*0.015+(bonus-1000000)*0.01;
         if(bonus<=100000){bonus*=0.1;}
         else if(bonus>100000 && bonus<=200000){bonus=bonus1;}
         else if(bonus>200000 && bonus<=400000){bonus = bonus2;}
         else if(bonus>400000 && bonus<=600000){bonus = bonus4;}
         else if(bonus>600000 && bonus<=1000000){bonus = bonus6;}
         else if(bonus>1000000){bonus = bonus10;}
         /************** second  bonus_作为基准值,代码更简练**************/
         bonus_1=100000*0.1;
         bonus_2=bonus_1+100000*0.075;
         bonus_4=bonus_2+200000*0.05;
         bonus_6=bonus_4+200000*0.03;
         bonus_10=bonus_6+400000*0.015;
         if(i<=100000){bonus_0=i*0.1;}
         else if(i<=200000){bonus_0=bonus_1+(i-100000)*0.075;}             //if else 判断写的更简单
         else if(i<=400000){bonus_0=bonus_2+(i-200000)*0.05;}
         else if(i<=600000){bonus_0=bonus_4+(i-400000)*0.03;}
         else if(i<=1000000){bonus_0=bonus_6+(i-600000)*0.015;}
         else {bonus_0=bonus_10+(i-1000000)*0.01;}
         if(bonus==bonus_0){
            printf("bingo!!! \n");
            num++;
         }else {printf("wrong!!!! \n");}         
   }
   if(num=2000000+1){printf("Pass! \n");}
   else{printf("NG \n");}
   system("pause");
   return 0;   
}

另外,vscode配置太坑了,看各种教程,折腾了三天勉强按自己的想法跑起来了,一把辛酸泪!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值