C++ 窗口设计 实践项目2 个人所得税计算器

2、编写多分支选择结构程序,输入个人月收入总额,计算出他本月应缴税款和税后收入。

  所得税计算方法:从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元,所以有:个人所得税=(收入总额-3500)*税率-速算扣除数

  例如:王某月收入总额3600元,个人所得税=(3600-3500)*3%=3元,李某月收入13500元,个人所得税=(13500-3500)*25%-1005=2500-1005=1495元。

  本题的关键是如何根据应纳税所得额,确定税率和速算扣除数。

完成运行界面:

各控件与变量相关联:

主控运行代码:

<span style="font-size:24px;"> void CMyDlg::OnButton1()
{
	// TODO: Add your control notification handler code here
	    UpdateData();
    double p;
	if(m_m<1500)
    {
        m_n=0;
       p=0.03;
    }
    else if(m_m<4500)
    {
        m_n=105;
        p=0.1;
    }
    else if(m_m<9000)
    {
        m_n=555;
        p=0.20;
    }
    else if(m_m<35000)
    {
        m_n=1005;
        p=0.25;
    }
    else if(m_m<55000)
    {
        m_n=2755;
        p=0.30;
    }
    else if(m_m<80000)
    {
        m_n=5505;
        p=0.35;
    }
    else
    {
        m_n=13505;
        p=0.45;
    }
	m_k=m_m*(1-p)-m_n;
	UpdateData(FALSE);

</span>

终于明白是怎么一回事了。

时间: 2024-08-27 08:42:31

C++ 窗口设计 实践项目2 个人所得税计算器的相关文章

C++ 窗口初级 实践项目1 函数求解

1.用if语句编写选择结构的程序,完成下面的分段函数的求值 (提示:x1(1).x1(2)为常数,变量名可以定为x1和x2.) 设计成的窗口版程序可以如下图(两个常量的值也可以调整): 这是我最终的运行界面: 这是求解的主要代码和插入图形: <span style="font-size:24px;">void CMy2Dlg::OnButton1() { // TODO: Add your control notification handler code here Upd

【C语言及程序设计】项目1-26-2&amp;3&amp;5:成绩等级 &amp; 分段函数求值switch语句版 &amp; 个人所得税计算器switch语句版

switch语句常用于解决多分支.分段问题,该语句的关键就在于将具体问题中的分段.分支条件转化为常量constant. 首先,一定要理解switch语句是如何执行的: 项目1-26-2:成绩等级 1 /* 成绩等级(switch).cpp: 2 问题描述:给出一百分制成绩,要求输出成绩等级'A','B','C','D','E'.90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60分以下为'E'. 3 */ 4 5 #include "stdafx.h&quo

移动APP测试用例设计实践经验(转载)

前言杂谈 在聊移动APP测试用例设计之前,我请大家先思考如下2个问题: 第一,我们为什么要做好测试用例设计?--why? 第二,好的测试用例设计有什么共性? --what? 深入思考这2个问题的答案是一件很有意义的事情,作为移动互联网时代的产品质量守卫军,我们必须提升自己的测试设计能力,必须清楚的知道要测什么,怎么测.但单从我们测试团队现状来看,有很多人都没有做好准备,测试设计方法仍然比较落后,所以我整理此文,旨在总结沉淀移动客户端测试用例设计实践,帮助测试人员时刻审视完善自我测试能力提升. 那

Android 实践项目开发 总结

  Android 实践项目开发 总结 课程:移动平台应用开发实践  班级:201592  姓名:杨凤  学号:20159213 成绩:___________       指导老师:娄嘉鹏          实验日期 :2015.12.06. 实验名称:                   android 百度地图开发 实验目的与要求: 1.实现定位 2.查询公交路线       3.目的地查询 实验目的: 在这次的项目开发中,我做的软件主要功能是调用百度地图的接口,实现定位.查询公交路线 和查

JavaScript网站设计实践(一)网站结构以及页面效果设计

原文:JavaScript网站设计实践(一)网站结构以及页面效果设计 这是JavaScript DOM编程艺术里的构建JavaScript网站设计的例子,这本书给我学习JavaScript带来许多启发,在这个乐队宣传网站中,把前面学到的知识点整合在这个项目了.在这里记录下实现这个乐队的宣传网站的具体过程,加深理解.好,从现在开始来实现这个JavaScript网站实战. 一.网页的结构 由三个部分组成:头部.导航.内容 效果图是这样的(勉强看,有点不美观.哈哈): 二.网站的的结构 这是我的项目目

.NET领域驱动设计—实践(穿过迷雾走向光明)

阅读目录 开篇介绍 1.1示例介绍 (OnlineExamination在线考试系统介绍) 1.2分析.建模 (对真实业务进行分析.模型化) 1.2.1 用例分析 (提取系统的所有功能需求) 1.3系统设计.建模 (技术化业务模型) 1.3.1 枚举类型的使用 (别让枚举类型成为数值型对象) 1.3.2 基础数据.业务数据 (显示实体和隐式过程) 1.3.3 模型在数据库中的主外键关联问题 (面向对象模型与关系模型的天然抗阻) 1.3.4 角色.类型 (区分类型与面向对象概念) 1.3.5 名词

《响应式Web设计实践》学习笔记

原书: 响应式Web设计实践 第2章 流动布局 1. 布局选项 传统的固定布局中存在很多问题, 随着屏幕大小的越来越多元化, 固定布局已经不能适用了. 在流动布局中, 度量的单位不再是像素, 而是变成了百分比. 弹性布局与流动布局类似, 但是通常情况下, 弹性布局中会以em来作为单位. 带来一个好处是随着用户增大或减小字体, 适用弹性布局的元素的宽度也会等比例地变化. 但是其也可能出现水平滚动条 混合布局 媒体查询: 媒体查询允许根据设备的信息----诸如屏幕宽度, 方向或者分辨率等属性来使用不

EntityFramework之领域驱动设计实践

EntityFramework之领域驱动设计实践 - 前言 EntityFramework之领域驱动设计实践 (一):从DataTable到EntityObject EntityFramework之领域驱动设计实践 (二):分层架构 EntityFramework之领域驱动设计实践 (三):案例:一个简易的销售系统 EntityFramework之领域驱动设计实践 (四):存储过程 - 领域驱动的反模式 EntityFramework之领域驱动设计实践 (五):聚合 EntityFramewor

android 实践项目 总结 (修改)

Android开发项目:百度地图的调用 在一个不熟悉的环境中,获得自己的位置,选择合适的就餐地点,住宿和公交路线成为一项难题.本次的实践项目就是为了解决上述难题的,通过调用百度地图的接口实现定位.查询公交路线.寻找合适的餐饮及住宿等功能,满足人们出行功能. 一 需求分析 1.1 客户需求 一个项目的开发,首先要了解客户的需求,否则这个项目没有任何开发的价值.在社会快速发展的今天,人员流通较快,选择合适的交通线路.餐馆及住宿成为一项难题,因此根据客户的需求,进行开发合适的项目来满足客户的需求. 1