C语言计算个人所得税 编程?

C语言计算个人所得税 编程?,第1张

程序首先提示用户输入工资,使用橘枣 scanf() 函数将用户输入的数据存储到变量 salary 中。然后,使用 if-else 语句

根据税收规定计算税收:如果工资大于5000元,则计算应缴纳的税收((工资-5000)*5%)并减去税收得到税后工资;否则,税收为0,税后工资启伍纯等于基本工资。最后,程序使用 printf() 函数输出税收和悄咐税后工资的值。

输出为0的根本原因在于,C语言中的 %d 是打印一个整数,而你计算出来的税收是一个浮点数,应该用 %f 或者 %lf,所粗塌举以代码看起来应该是这样的:

case 2: printf("s=%f\n", (x - 800)*0.05) break

另外,我怀疑你的第二个 else if 中的条件写错了,应该是:

else if ( 1200 <= x && x < 2000)

你把后面的 2000 写成了 1200

最后,你可以直接在 if else 里面计算税收,不需要额外的定义一个 y ,去计算它的值,然后再用 switch:

if ( 0 <= x && x < 800 )

    printf("s=0\n")

    

else if ( 800 <= x && x < 1200 )

    岩碧printf("s=%f\n", ( x - 800 ) * 0.05 )

    

else if ( 1200 <= x && x < 2000 )

    printf("s=%f\n", ( x - 1200 ) * 0.08 )

    

else: # 这里就不用判断 2000 <= x 了,因为如果判断走到衫漏这里就代表了 x >= 2000

    printf("s=%f\n", ( x - 2000 ) * 0.2 )

其实你的 if else 语句写得重复了,看下图说明: 

所以最后的程序应该是:

#include<stdio.h>

int main()

{

float a ,b,者烂c

printf("请输入奖金数:")

scanf("%f",&a)

if (a <500)

printf("应缴税款:%f\n实得奖金数:%f",a*0/100,a*100/100)

else if(a>=500&&a<改嫌薯1000)

printf("应缴税款:%f\n实得奖金数:%f", a * 3/ 100, a * 97 / 100)

else if(a>=1000&&a<2000)

printf("应缴税款:%f\n实得核者奖金数:%f", a * 5 / 100, a * 95 / 100)

else if(a>=2000&&a<5000)

printf("应缴税款:%f\n实得奖金数:%f", a * 8 / 100, a * 92 / 100)

else

printf("应缴税款:%f\n实得奖金数:%f", a * 12 / 100, a * 88 / 100)

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12564599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存