C++程序设计实验报告(六)

来源:互联网 发布:analytics是什么软件 编辑:程序博客网 时间:2024/06/05 16:29
报告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)*税率-速算扣除数


* 程序输出:应缴税款和税后收入
* 问题分析:输入一个金额,判断他所属的部分,对于每个不同部分进行编译(税率,速算扣除数),最后依据公式求解。
* 算法设计:

#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 。
上机感言:犯了个低级错,却花了大量时间去找错,结果浪费了时间,不过还是有收获,错是最大的收获。