问题及代码:
/*
* Copyright (c) 2016,烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称:main.cpp
* 作 者:赵志君
* 完成时间:2016年3月11日
* 版 本 号:v1.0
*
* 问题描述:编写选择结构程序,输入个人月收入总额,计算出他本月应缴税款和税后收入。
* 输入描述:一个浮点型数,表示个人工资数
* 输出描述:两个浮点型数,一个税款,一个税后所得东字数。
*/
#include <iostream>
using namespace std;
int main()
{
double dSalary,dTax=0,dNetIncome=0;
cout<<"请输入您本月的收入总额(元):";
cin>>dSalary;
if(dSalary<=3500)
dNetIncome=dSalary;
else
{
double m;
int t;
m=dSalary-3500;
t=(m<80000)+(m<55000)+(m<35000)+(m<9000)+(m<4500)+(m<1500);
switch(t)
{
case 0:
dTax=m*0.45-13505;
dNetIncome=dSalary-dTax;
break;
case 1:
dTax=m*0.35-5505;
dNetIncome=dSalary-dTax;
break;
case 2:
dTax=m*0.30-2755;
dNetIncome=dSalary-dTax;
break;
case 3:
dTax=m*0.25-1005;
dNetIncome=dSalary-dTax;
break;
case 4:
dTax=m*0.20-555;
dNetIncome=dSalary-dTax;
break;
case 5:
dTax=m*0.1-105;
dNetIncome=dSalary-dTax;
break;
case 6:
dTax=m*0.03;
dNetIncome=dSalary-dTax;
break;
}
}
cout<<"您本月应缴个人所得税 "<<dTax<<" 元,税后收入是 "<<dNetIncome<<" 元。"<<endl;
cout<<"依法纳税,共享繁荣。谢谢使用!"<<endl;
return 0;
}
运行结果:
知识点总结:
在这个题目中,学到了一种新的判断方法,就是题目中 t 变量的那个语句,关系的返回值为是否即1或0,这样与switch连用,可以让代码更简略清晰。