C语言:计算个人所得税

【问题描述】 2011年开始实行新个人所得税法,要求输入月薪salary,输出应交的个人所得税 tax (保留两位小数)。

新税法方案如下:
tax=rate*(salary-3500) - deduction
当 salary<=3500时,rate=0、deduction=0;
当 3500<salary<=5000时,rate=3%、deduction=0;
当 5000<salary<=8000时,rate=10%、deduction=105;
当 8000<salary<=12500时,rate=20% 、deduction=555;
当 12500<salary<=38500时, rate=25% 、deduction=1005;
当 38500<salary<=58500时, rate=30% 、deduction=2755;
当 58500<salary<=83500时, rate=35% 、deduction=5505;
当 83500<salary时, rate=45% 、deduction=13505;

【输入输出样例1】(下划线部分表示输入)Enter the salary: 5010.87tax=46.09
【输入输出样例2】(下划线部分表示输入)Enter the salary: 32098.76tax=6144.69
【输入输出样例3】(下划线部分表示输入)Enter the salary: 3000tax=0.00
【输入输出样例4】(下划线部分表示输入)Enter the salary: 59000tax=13920.00
【输入输出样例5】(下划线部分表示输入)Enter the salary: 84500tax=22945.00
【样例说明】输入提示符后要加一个空格。
例如“ Enter the salary : ,其中:后要加一个且只能一个空格。
输出语句的=两边无空格。
英文字母区分大小写。必须严格按样例输入输出。

#include<stdio.h>
#include<math.h>
int main()
{
    int decution;
    double rate,salary,tax;
    // printf("Enter the salary: \n");    
    scanf("%lf",&salary);    
    if(salary<=3500) {rate=0;decution=0;}    
    else if(salary>3500&&salary<=5000){rate=0.03;decution=0;}    
    else if(salary>5000&&salary<=8000) {rate=0.1;decution=105;}    
    else if(salary>8000&&salary<=12500) {rate=0.2;decution=555;}    
    else if(salary>12500&&salary<=38500) {rate=0.25;decution=1005;}   
    else if(salary>38500&&salary<=58500) {rate=0.3;decution=2755;}    
    else if(salary>58500&&salary<=83500) {rate=0.35;decution=5505;}   
    else {rate=0.45;decution=13505;}    
    tax =rate*(salary-3500)-decution;    
    printf("%.2f\n",fabs(tax));    
    return 0;
    }
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值