个人所得税C语言

编写一个计算个人所得税的程序,要求输入收入金额,能够输出应缴的
个人所得税。个人所得税征收办法如下:

  • 起征点为3500元
  • 不超过1500元部分,征收3%;
  • 超过1500~4500元部分,征收10%;
  • 超过4500~9000元部分,征收20%;
  • 超过9000~350000元部分,征收25%;
  • 超过35000~55000元部分;征收30%;
  • 超过55000~80000元部分,征收35%。
#include<stdio.h>

#define TAXBASE 3500   //起征点
typedef struct{   //征税区间与征税率
    long start;     
    long end;
    double taxrate;
} TAXTABLE;

TAXTABLE TaxTable[]={{0,1500,0.03},{1500,4500,0.10},{4500,9000,0.20},
{9000,35000,0.25},{35000,55000,0.30},{55000,80000,0.35},{80000,1e9,0.45}};

double CaculateTax(long profit)
{
    int i;
    double tax = 0.0;
    profit -= TAXBASE;
    for(i=0;i<sizeof(TaxTable)/sizeof(TAXTABLE);i++)
    {
        if(profit>TaxTable[i].start)
        {
            if(profit>TaxTable[i].end)
            {
                tax += (TaxTable[i].end-TaxTable[i].start)*TaxTable[i].taxrate; 
            } else{
                tax += (profit-TaxTable[i].start)*TaxTable[i].taxrate;
                printf("征税范围:%6ld~%6ld 该范围内缴税金额%6.2f\n",TaxTable[i].start,TaxTable[i].end,tax);
                return tax;
            } 
            printf("征税范围:%6ld~%6ld 该范围内缴税金额:%6.2f\n",TaxTable[i].start,TaxTable[i].end,tax);   
        } 
    } 
    return tax;
} 

void main()
{
    long profit;
    double tax;
    printf("请输入个人收入金额:");
    scanf("%ld",&profit);
    tax =  CaculateTax(profit);
    printf("您的个人所得税为:%f\n",tax); 
} 
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值