1 条题解

  • 0
    @ 2025-4-7 21:29:26

    C :

    #include <stdio.h>
    #include <stdlib.h>
    
    int main(int argc, char *argv[])
    {
      int a,b;
      scanf("%d",&a);
      b=a/100000;
      switch(b)
      {
         case 0:
              printf("%.f",a*0.1); break;
         case 1:      
              printf("%.f",(a-100000)*0.75+10000); break;
         case 2:
         case 3:
              printf("%.f",(a-200000)*0.5+10000+7500); break;
         case 4:
         case 5:
              printf("%.f",(a-400000)*0.03+10000+7500+10000);break;                
         case 6:
         case 7:
         case 8:
         case 9:
              printf("%.f",(a-600000)*0.015+10000+7500+10000+6000);break;
         default:
               printf("%.f",(a-1000000)+10000+7500+10000+6000+6000); break; 
                   
      }
    
      return 0;
    }
    
    

    C++ :

    #include<iostream>
    using namespace std;
    int main()
    {
    	int i;
    	double bonus,bon1,bon2,bon4,bon6,bon10;
    	bon1=100000*0.1;
    	bon2=bon1+100000*0.075;
    	bon4=bon2+200000*0.05;
    	bon6=bon4+200000*0.03;
    	bon10=bon6+400000*0.015;
    	cin>>i;
    	if (i<100000) bonus=i*0.1;
    	else if (i<=200000) bonus=bon1+(i-100000)*0.075;
    	else if (i<=400000) bonus=bon2+(i-200000)*0.05;
    	else if (i<=600000) bonus=bon4+(i-400000)*0.03;
    	else if (i<=1000000) bonus=bon6+(i-600000)*0.015;
    	else bonus=bon10+(i-1000000)*0.01;
    	cout<<int(bonus)<<endl;
    	return 0;
    }
    
    • 1

    C语言程序设计教程(第三版)课后习题5.8

    信息

    ID
    1496
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者