switch語句寫條件時的轉換
阿新 • • 發佈:2018-11-12
#譚浩強c程式p109
企業發放的獎金根據利潤提成。利潤I低於或等於100000元的,獎金可提成10%;利潤高於100000元,低於200000元時,低於100000元的部分按10%提成,高於100000元的部分,可提成7.5%;200000<I<=400000時,低於200000元的部分仍按上述辦法提成。高於200000元的部分按5%提成;400000<I<=600000元時,高於400000元的部分按3%提成;600000<I<=1000000時,高於600000元的部分按1.5%提成;I>1000000時,超過1000000元的部分按1%提成,從鍵盤輸入當月利潤I,求應發獎金總數。
用swich語句程式設計序。
想法及步驟簡述
首先將數字縮小變成swich語句所用的1,2,3,4,5…
#include<stdio.h> int main() { int s,a; double bonus; printf("please enter your profit:"); scanf("%d",&s); a=s/100000; switch(a) { case(0):printf("bonus=%lf",bonus=s*0.1); break; case(1):printf("bonus=%lf",bonus=100000*0.1+(s-100000)*0.075); break; case(2): case(3):printf("bonus=%lf",bonus=100000*0.1+100000*0.075+(s-200000)*0.05); break; case(4): case(5):printf("bonus=%lf",bonus=100000*0.1+100000*0.075+200000*0.05+(s-400000)*0.03)' break; case(6): case(7): case(8): case(9):printf("bonus=%lf",bonus=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(s- 600000)*0.015); break; default:printf("bonus=%lf",bonus=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(s-1000000)*0.01); break; } return 0; }