第9周任务2-个人所得税计算器

#include 
using namespace std;
int main()
{double dSalary,dTax,dNetIncome;double dValue;   //在模板基础上加一个变量,表示超出起征点的收入double dRate, dOffset;  //分别表示税率和速算扣除数int iStep;  //加入中间量“档次”,便于计算 cout<<"请输入您本月的收入总额(元):";cin>>dSalary;dValue=dSalary-3500;if(dValue<=0.0)    dTax=0.0;   else{if (dValue<=1500)iStep=1;else if (dValue<=4500)iStep=2;else if (dValue<=9000)iStep=3;else if (dValue<=35000)iStep=4;else if (dValue<=55000)iStep=5;else if (dValue<=80000)iStep=6;else iStep=7;switch (iStep)  {case 1: dRate=0.03, dOffset=0.0;    break; case 2: dRate=0.1,  dOffset=105.0;  break;case 3: dRate=0.2,  dOffset=555.0;  break;case 4: dRate=0.25, dOffset=1005.0; break;case 5: dRate=0.3,  dOffset=2755.0; break;case 6: dRate=0.35, dOffset=5055.0; break;case 7: dRate=0.45, dOffset=13505.0;}dTax = dValue * dRate - dOffset;}dNetIncome = dSalary-dTax;cout<<"您本月应缴个人所得税 "<

 

运行结果:

心得体会:

       课文原文有说:“‘case常量表达式’只是起语句标号作用,并不是在该处进行条件判断。”在这一点上,switch语句不同于if-else语句。case后面只是一个常量表达式,而不应出现条件表达式。故而加入iStep作为中间量,便于switch语句的表达。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部