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

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


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值