关于一个程序的编写(Dev-C++)
2005年修改后的《中华人民共和国个人所得税法》规定,个人所得,应纳个人所得税。具体办法是,每月收入总和扣除1600元后的金额为应缴纳所得税额,
应纳税所得额不超过500元的税率为5%,
超过500元至2000元的部分税率为10%,
超过2000元至5000元的部分税率为15%,
超过5000元至20000元的部分税率为20%
超过20000元至40000元的部分税率为25%,
超过40000元至60000元的部分税率为30%,
超过60000元至80000元的部分税率为35%,
超过80000元至100000元的部分税率为40%,
超过100000元的部分税率为45%。
现要求编写程序,从键盘上输入某人本月的总收入,输出应缴纳的税额。
参考答案:#include <stdio.h>
main()
{
float tax,income,a;
printf("please input you income:");
scanf("%f",&income);
a=income-1600;
if(a<=0) tax=0;
else if(a<=500) tax=a*0.05;
else if(a<=2000) tax=(a-500)*0.1+500*0.05;
else if(a<=5000) tax=(a-2000)*0.15+1500*0.1+500*0.05;
else if(a<=20000) tax=(a-5000)*0.2+3000*0.15+1500*0.1+500*0.05;
else if(a<=40000) tax=(a-20000)*0.25+15000*0.2+3000*0.15+1500*0.1+500*0.05;
else if(a<=60000) tax=(a-40000)*0.3+20000*0.25+15000*0.2+3000*0.15+1500*0.1+500*0.05;
else if(a<=80000) tax=(a-60000)*0.35+20000*0.3+20000*0.25+15000*0.2+3000*0.15+1500*0.1+500*0.05;
else if(a<=100000) tax=(a-80000)*0.4+20000*0.35+20000*0.3+20000*0.25+15000*0.2+3000*0.15+1500*0.1+500*0.05;
else if(a>100000) tax=(a-100000)*0.45+20000*0.4+20000*0.35+20000*0.3+20000*0.25+15000*0.2+3000*0.15+1500*0.1+500*0.05;
if(tax==0)
printf("You not need pay the tax");
else printf("You should pay %.fyuan for your tax",tax);
printf("\nTHANKS\n");
}
用switch case 不太方便,用if语句会方便一点;