第九周上机任务项目2:个人所得税计算器

/* 
 * Copyright (c) 2012, 烟台大学计算机学院  
 * All rights reserved.  
 * 作    者:赵冠哲
 * 完成日期:2012 年 10 月 24 日  
 * 版 本 号:v1.0  
  * 输入描述:个人月收入总额  
* 问题描述:按2011年9月1日起我国调整的个人所得税征收办法,起征点为3500元,超出部分按以下7级计算: 
* 1 超过0至1500     税率3%   速算扣除数0 
* 2 超过1500元至4500元的部分        税率10%   速算扣除数105  
* 3 超过4500元至9000元的部分        税率20%   速算扣除数555 
* 4 超过9,000元至35,000元的部分     税率25%   速算扣除数1005 
* 5 超过35,000元至55,000元的部分    税率30%   速算扣除数2755 
* 6 超过55,000元至80,000元的部分    税率35%   速算扣除数5505  
* 7 超过80,000以上   税率45%  速算扣除数13505  
* 个人所得税=(收入总额-3500)*税率-速算扣除数 
* 程序输出:应缴税款和税后收入
* 问题分析:先判断超出多少,然后根据设定的值运算  
* 算法设计:  
*/  
#include <iostream>
using namespace std;
int main()
{
double dSalary,dTax=0,dNetIncome=0,rate,cut,residue;
int a;
cout<<"请输入您本月的收入总额(元):";
cin>>dSalary;
residue=dSalary-3500;
if(residue<=0)
dTax=0;
else
{
 if(residue<=1500)
a=1;
 else if(residue<=4500)
a=2;
 else if(residue<=9000)
a=3;
 else if(residue<=35000)
a=4;
 else if(residue<=55000)
a=5;
 else if(residue<=80000)
a=6;
 else
a=7;

switch(a)
{
case 1:
rate=0.03,cut=0;break;
case 2:
rate=0.1,cut=105;break;
case 3:
rate=0.2,cut=555;break;
case 4:
rate=0.25,cut=1005;break;
case 5:
rate=0.3,cut=2755;break;
case 6:
rate=0.35,cut=13505;break;
case 7:
rate=0.45,cut=13505;break;
}
dTax=residue*rate-cut;
}
dNetIncome=dSalary-dTax;
cout<<"您本月应缴个人所得税"<<dTax<<"元,税后收入是"<<dNetIncome<<"元。\n";
cout<<"依法纳税,共享繁荣。谢谢使用!\n";
return 0;
}

运行结果:

第九周上机任务项目2:个人所得税计算器_第1张图片

心得体会:

个人觉得这个任务相对较难,想了很久,不断的修改,一个小小的字符反复检查修改了很多遍。最耗时间的是自己把“}”给丢了,导致只能算出超过3500元的税额,低于3500的不能算出。觉得C++有点难度了,做错的地方也多了起来。有点怀疑自己的能力,到底自己适不适合学C++,哎,没有回头路了,加油。

知识点总结:

学会使用switch语句。确定分支。

你可能感兴趣的:(第九周上机任务项目2:个人所得税计算器)