已知税后求税前工资

 \*
个人所得税起征点为3500元。
应缴个人所得税的计算公式为=(月应税收入-3500)*税率-速算扣除数
级数   含税级距   税率   速算扣除数
1 不超过1,500元的 3%      0
2 超过1,500元至4,500元的部分 10% 105
3 超过4,500元至9,000元的部分20% 555
4 超过9,000元至35,000元的部分 25% 1005
5 超过35,000元至55,000元的部分 30% 2,755
6 超过55,000元至80,000元的部分 35% 5,505
7 超过80,000元的部分 45% 13,505
*\
#include 
#include 
int main(){
    int t;
    printf("税收起征点3500元\n");
    printf("请输入税后工资:");
    while(1){
        scanf("%d",&t);
        if (t < 0){
            printf("输入有误,请重新输入:\n");
        }
        else{
            break;
        }
    }
    /*
    1500
    4500 -1500
    9000 -4500
    35000 - 9000
    */
    int n = t - 3500;
    int a1 = 1500 * 0.97;
    int a2 = a1 + 3000 * 0.9;
    int a3 = a2 + 4500 * 0.8;
    int a4 = a3 + 26000 * 0.75;
    int a5 = a4 + 20000 * 0.7;
    int a6 = a5 + 25000 * 0.65;
    int s = 0;
    if( n < 0 ){
        s = t;
    }

    /*
    3500
    3500 + 1500
    3500 + 4500
    3500 + 9000
    */
    else if(n <= a1 && n > 0){
        s = (int)(3500+n/0.97);
    }
    else if(n > a1 && n <= a2){
        s = (int)(5000 +(n-a1)/0.9);
    }
    else if(n > a2 && n <= a3){
        s = (int)(8000 +(n-a2)/0.8);    
    }
    else if(n > a3 && n <= a4){
        s = (int)(12500+(n-a3)/0.75);
    }
    else if(n > a4 && n <= a5){
        s = (int)(38500+(n-a4)/0.7);
    }
    else if(n > a5 && n <= a6){
        s = (int)(3500+(n-a5)/0.65);
    }
    else if(n > a6){
        s = (int)(3500+(n-a6)/0.55);
    }
    printf("税前工资:%d\n",s);
    getchar();
    return 0;
}

你可能感兴趣的:(c)