C語言 · 企業獎金發放


算法提高 企業獎金發放  
時間限制:1.0s   內存限制:512.0MB
    
  企業發放的獎金根據利潤提成。利潤低於或等於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%提成。從鍵盤輸入當月利潤,求應發放獎金總數?(保留兩位小數)利潤的大小在double以內
樣例輸入
210000
樣例輸出
18000.00
 
作者注釋:
土辦法:
 1 #include<stdio.h>
 2 #include<string.h>
 3 int main(){
 4     double l,j;//l:利潤;t:獎金總數。 
 5     scanf("%lf",&l);
 6     if(l<=100000){
 7         j=l*0.1;
 8     }else if(l>100000 && l<=200000){
 9         j=100000*0.1+(l-100000)*7.5/100;
10         printf("%.2lf",j);
11     }else if(l>200000 && l<=400000){
12         j=100000*0.1+100000*7.5/100+(l-200000)*5/100;
13         printf("%.2lf",j);
14     }else if(l>400000 && l<=600000){
15         j=100000*0.1+100000*7.5/100+200000*5/100+(l-400000)*3/100;
16         printf("%.2lf",j);
17     }else if(l>600000 && l<=1000000){
18         j=100000*0.1+100000*7.5/100+200000*5/100+200000*3/100+(l-600000)*1.5/100;
19         printf("%.2lf",j);
20     }else if(l>1000000){
21         j=100000*0.1+100000*7.5/100+200000*5/100+200000*3/100+400000*1.5/100+(l-1000000)*1/100;
22         printf("%.2lf",j);
23     }
24     return 0;
25 }

稍微聰明點的辦法:

 1 #include<stdio.h>  
 2 int main() {  
 3     double a; 
 4     scanf("%lf",&a);
 5     double b = 0;
 6     int s[6] = {1000000, 600000, 400000, 200000, 100000, 0};  
 7     double t[6] = {0.01, 0.015, 0.03, 0.05, 0.075, 0.1};  
 8     for(int i = 0; i < 6; i++) {  
 9         if(a - s[i] >= 0) {  
10             b += (a - s[i]) * t[i];  
11             a = s[i];
12         }  
13     }  
14     printf("%.2lf", b);
15     return 0;
16 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM