报告2:
实验目的:学会使用循环控制语句解决实际问题
实验内容:编写多分支选择结构程序,根据个人月收入总额,计算出应缴税款和税后收入。
/*
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 个人所得税
* 作 者: 刘镇
* 完成日期: 2011 年10 月 28 日
* 版本号: 1.003
* 对任务及求解方法的描述部分
* 输入描述:个人月收入总额
* 问题描述:从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)*税率-速算扣除数
* 程序输出:应缴税款和税后收入
* 问题分析:输入一个金额,判断他所属的部分,对于每个不同部分进行编译(税率,速算扣除数),最后依据公式求解。
* 算法设计:
运行结果:
实验目的:学会使用循环控制语句解决实际问题
实验内容:编写多分支选择结构程序,根据个人月收入总额,计算出应缴税款和税后收入。
/*
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 个人所得税
* 作 者: 刘镇
* 完成日期: 2011 年10 月 28 日
* 版本号: 1.003
* 对任务及求解方法的描述部分
* 输入描述:个人月收入总额
* 问题描述:从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 m, s, dSalary, dTax = 0, dNetIncome = 0;
cout << "请输入您本月的收入总额(元):";
cin >> dSalary;
m = dSalary - 3500;
if(m > 0 && m <= 1500)
{
dTax = 0.03;
s = 0;
}
else if(m > 1500 && m <= 4500)
{
dTax = 0.1;
s = 105;
}
else if(m > 4500 && m <= 9000)
{
dTax = 0.2;
s = 555;
}
else if(m > 9000 && m <= 35000)
{
dTax = 0.25;
s = 1005;
}
else if(m > 35000 && m <= 55000)
{
dTax = 0.3;
s = 2755;
}
else if(m > 55000 && m <= 80000)
{
dTax = 0.35;
s = 5505;
}
else
{
dTax = 0.45;
s = 0;
}
dNetIncome = m*dTax - s;
cout << "您的速算扣除数 " << dTax << " 元,您的个人所得税是 " << dNetIncome << " 元。\n";
cout << "依法纳税,共享繁荣。谢谢使用!\n";
return 0;
}
运行结果:
经验积累:
1.开始用了较长时间思考,编译用了很短时间,但结果总不多,后来发现在每一次判断后都应该加 dNetIncome=m*dTax-s否则会总输出 0 。
上机感言:犯了个低级错,却花了大量时间去找错,结果浪费了时间,不过还是有收获,错是最大的收获。