写一个程序,输入任何一个公民的月收入和五险一金,能够计算他应缴纳的个人所得税。用C语言

3、 我国的个人所得税实行累进税率,计算办法是:用全月应纳税所得额分为几个级别,分别乘以累进税率,几个级别税额的总和就是该月应纳个人所得税额。
全月应纳税所得额=全月收入总额 - (五险一金) - 3500(现阶段个税起征点)
个人所得税的税率分为7个级数(见下表):
级数 全月应纳税所得额 税率
1级 1500元之内 3%
2级 超过1500到4500元的部分 10%
3级 超过4500元至9000元的部分 20%
4级 超过9000元至35000元的部分 25%
5级 超过35000元至55000元的部分 30%
6级 超过55000元至80000元的部分 35%
7级 超过80000元的部分 45%
例如:某人某月收入为7000元,其五险一金为1000元,他的月个人所得税应该这样计算:
应纳税所得额:7000-1000-3500=2500=1500+1000元,共分为2个级别
1级(1500元之内的部分):1500×3%=45
2级(超过1500到4500元的部分):1000×10%=100
则此人应缴个人所得税为45+100=145元。
要求:编写一个程序,输入任何一个公民的月收入和五险一金,能够计算他应缴纳的个人所得税。
(提示: 根据应纳税所得额来确定他的最高税率级数,则他的前几级个人所得税=(各级别的全额数×相应税率)之和,最后一级的个人所得税=该级别的实际额数×相应税率。两者相加即为最后个人所得税, 如上例,7000-1000-3500=2500元,1500×3%+1000×10%=145元)

  假定5险一金固定是1000元,起征点是3500,程序如下:

  #include <stdio.h>
  int main(int argc, char *argv[])
  {
  float money,temp,total,t;
  printf("请输入工资收入:");
  scanf("%f",&money);
  t=money-3500-1000; // 全月收入总额-1000(五险一金)-3500(现阶段个税起征点)

  if (t<1500)
  temp=t*0.03;
  else
  if (t<4500)
  temp=1500*0.03+(t-1500)*0.1;
  else
  if (t<9000)
  temp=1500*0.03+3000*0.1+(t-4500)*0.2;
  else
  if (t<35000)
  temp=1500*0.03+3000*0.1+4500*0.2+(t-9000)*0.25;
  else if (t<55000)
  temp=1500*0.03+3000*0.1+4500*0.2+26000*0.25+(t-35000)*0.3;
  else if (t<80000)
  temp=1500*0.03+3000*0.1+4500*0.2+26000*0.25+20000*0.3+(t-55000)*0.35;
  else
  temp=1500*0.03+3000*0.1+4500*0.2+26000*0.25+20000*0.3+25000*0.35+(t-80000)*0.45;

  total=money-temp;
  printf("该工资扣除%8.2f的税收后,实际工资为:%8.2f\n",temp,total);

  return 0;
  }
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-02
路过啊,纯属个人对个税的理解。
我们都知道个税公式:工资、薪金所得个人所得税应纳税额=应纳税所得额×适用税率-速算扣除数
接上面例题,如果是按公式套,是否是这样1000×10%-105=-5元,那么累进计算下来,就是应缴纳个税140元?
相似回答