试题编号: 201612-2
试题名称: 工资计算
时间限制: 1.0s
内存限制: 256.0MB

问题描述

小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资。假设他一个月的税前工资(扣除五险一金后、未扣税前的工资)为S元,则他应交的个人所得税按如下公式计算:
  1) 个人所得税起征点为3500元,若S不超过3500,则不交税,3500元以上的部分才计算个人所得税,令A=S-3500元;
  2) A中不超过1500元的部分,税率3%;
  3) A中超过1500元未超过4500元的部分,税率10%;
  4) A中超过4500元未超过9000元的部分,税率20%;
  5) A中超过9000元未超过35000元的部分,税率25%;
  6) A中超过35000元未超过55000元的部分,税率30%;
  7) A中超过55000元未超过80000元的部分,税率35%;
  8) A中超过80000元的部分,税率45%;
  例如,如果小明的税前工资为10000元,则A=10000-3500=6500元,其中不超过1500元部分应缴税1500×3%=45元,超过1500元不超过4500元部分应缴税(4500-1500)×10%=300元,超过4500元部分应缴税(6500-4500)×20%=400元。总共缴税745元,税后所得为9255元。
  已知小明这个月税后所得为T元,请问他的税前工资S是多少元。

输入格式

输入的第一行包含一个整数T,表示小明的税后所得。所有评测数据保证小明的税前工资为一个整百的数。

输出格式

输出一个整数S,表示小明的税前工资。

样例输入

9255

样例输出

10000

评测用例规模与约定

对于所有评测用例,1 ≤ T ≤ 100000。

解题思路
1.用打表简化了代码的运算(计算要小心)
2.用数组取临界值避免了重复使用if语句

#include<stdio.h>
int main()
{int a[9] = { 0,3500,4955,7655,11255,30755,44755,61005 ,200000};//各部分的临界值int S, A, k, i;long T;scanf("%d", &T);for (i = 0; i <= 7; i++){if (T >= a[i] && T < a[i + 1])k = i;//代表是哪一个部分的}switch (k)//一次对应每一部分由T求S{case 0:S = T;break; case 1:S = 3500 + (T - 3500) / 0.97; break;case 2:S = 5000 + (T - 4955) / 0.9; break;case 3:S = 8000 + (T - 7655) / 0.8; break;case 4:S = 12500 + (T - 11255) / 0.75; break;case 5:S = 38500 + (T - 30755) / 0.7; break;case 6:S = 58500 + (T - 44755) / 0.65; break;case 7:S = 83500+ (T - 61005) / 0.55; break;}printf("%d", S);return 0;
}

##(C语言) CSP 201612-2 工资计算(打表法)(100分)相关推荐

  1. 【华为OD机试真题 python】火星文计算 【2022 Q4 | 100分】

    ■ 题目描述 [火星文计算] 已知火星人使用的运算符为#.$,其与地球人的等价公式如下: x#y = 2*x+3*y+4 x$y = 3*x+y+2 1.其中x.y是无符号整数 2.地球人公式按C语言 ...

  2. 【华为OD机试真题 JAVA】火星文计算【2022 Q4 | 100分】

    ■ 题目描述 [火星文计算] 已知火星人使用的运算符为#.$,其与地球人的等价公式如下: x#y = 2*x+3*y+4 x$y = 3*x+y+2 1.其中x.y是无符号整数 2.地球人公式按C语言 ...

  3. 7-1 插入排序法 (100 分)(C语言版)

    我没有用插入排序,我用的冒泡排序也通过了 编写函数实现插入排序法对数组从小到大排序.在主函数中首先输入一个整数N(1<N<=100),然后再输入N个整数存入数组中,调用你编写的函数排序后输 ...

  4. 【CSP】【Java】工资计算

    问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资.假设他一个月的税前工资(扣除五险一金后.未扣税前的工资)为S元,则他应交的个人所得税按如下公式计算: 1) 个人所得 ...

  5. CCF201612-2 工资计算(100分)

    试题编号: 201612-2 试题名称: 工资计算 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资.假 ...

  6. 201612-2工资计算

    试题编号: 201612-2 试题名称: 工资计算 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资.假 ...

  7. 用java计算输入工资计算税收_标准作业

    课后作业 第一章 理论: 1.java环境搭建的步骤 2.java语言的简介 3.手写代码实现个人信息的输出(姓名,性别,年龄,家庭地址,爱好,座右铭) 上机: 分别使用记事本和myeclipse编写 ...

  8. C语言笔记之个税计算

    C语言笔记之个税计算 1. 业务 1.1 月薪个人所得税 1.2 年终奖个人所得税 2. 功能 2.1 初级功能 2.2 高级功能 1. 业务 1.1 月薪个人所得税 2019年的个税制度改得比较复杂 ...

  9. R语言stringr包str_count函数计算字符串匹配个数实战

    R语言stringr包str_count函数计算字符串匹配个数实战 目录 R语言stringr包str_count函数计算字符串匹配个数实战 #导入stringr包 #仿真数据

最新文章

  1. 博客的起死复生+慎改wdpc端口
  2. 80. 删除有序数组中的重复项 II
  3. 数据结构-栈之二进制转十进制和八进制
  4. python画正方体_python绘制立方体的方法
  5. xMenuTools(超实用右键菜单工具) v7.6
  6. 腾讯公开“区块链网络的信息处理方法”相关专利
  7. 牛客网编程练习之编程马拉松:发工资
  8. go开发属于自己的日志库-日志库易用性封装
  9. 【2019杭电多校第九场1002=HDU6681】Rikka with Cake(离散化+树状数组+思维)
  10. 指导老师对计算机论文的评语,指导老师对论文的评语
  11. idea 2018 破解教程
  12. 前端实现批量下载图片(自己的服务器需设置可跨域请求)
  13. 学习笔记——利用串口通信控制LED指示灯开关
  14. Thinkpad x250安装Windows10后指纹识别的问题
  15. python的撤销和回退_撤销和回退
  16. 运用Python完成学生成绩判定
  17. html5 audio音乐播放,循环播放等9款播放器
  18. UniswapV2Library.sol
  19. 从开发角度读懂公司卫生间一直有人窜稀的原理
  20. 华云数据信创云基座“全芯全栈全生态”能力解读

热门文章

  1. 算法导论 CLRS 23.3 解答 (未完成)
  2. 在新窗口中打开链接 javascript
  3. Asp.net主题(theme)和皮肤(skin)的使用
  4. 列出IIS上的虚拟目录和网站信息。
  5. Android SDK大连东软镜像地址及地址列表
  6. Akka-CQRS(2)- 安装部署cassandra cluster,ubuntu-16.04.1-LTS and MacOS mojave
  7. 两个或多个线程执行完成之后继续执行之后的步骤,CountDownLatch与CyclicBarrier
  8. Mac下安装jdk,并编写hello world
  9. Android中通过ActionBar为标题栏添加搜索以及分享视窗
  10. Java自动跳转到debug模式的解决方法