注意:现在国家税收早已改革不要在意这些细节,注意看题! 应税所得为税前收入扣除 3500 元(起征点),然后超出部分,按照以下税率收税:
规则:应缴税款 = (税前工资 - 各类保险 - 3500) * 税率 - 速算扣除数。 注意:此处各类保险默认为 262 元。 实发工资 = 税前工资 - 应缴税款 - 各类保险。 例如:若税前工资为 15000,各类保险 262 元。 应缴税款(1804.5) = (15000 - 262 - 3500) * 0.25 - 1005 实发工资(12933.5) = 15000 - 1804.5 - 262
要求:读入一个整数,表示税前收入,输出应当缴纳的个人所得税和税后实际收入。
参考代码如下:
import java.util.Scanner;public class TestTax {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入你需要查询的工资:");double salary = sc.nextDouble();//税前工资//默认公司员工最低工资为500元,//以防止输入负数和小于262的工资数而出现负数if (salary //1、需要缴税的判断if (taxBefore tax = taxBefore * 0.1 - 105;} else if (taxBefore tax = taxBefore * 0.25 - 1005;} else if (taxBefore tax = taxBefore * 0.35 - 5505;} else {tax = taxBefore * 0.45 - 13505;}} else {//2、不需要缴税的判断(1、2顺序改变可以减少一下判断)System.out.println("您当前的工资不需要缴纳税款!但是需要缴纳保险费用!");}double taxSalary = salary - tax - 262;//税后实际收入System.out.println("您应当缴纳的个人所得税为:" + tax+ "元,实际收入为:"+ taxSalary + "元!");}}测试如下: