个税设计需要if else-if else多分支结构和while循环
import java.sql.SQLOutput;
import java.util.*;//调用Scanner
public class TestLoop04 {
public static void main(String[] args) {
//(1)通过键盘输入用户薪水
//(2)百度搜索个税计算方式,计算不同薪资水平的税款
//(3)直到键盘输入“exit”,则退出程序(使用break退出循环)
/*{原来多行备注用的是/*}
应纳税所得额=工资收入金额-各项社会保险费-起征点(5000元)
应纳税额=应纳税所得额x税率-速算扣除数
级数 应纳税所得额 税率(%) 速算扣除数()
1. 不超过3,000元的部分 3 0
2. 超过3,000元至12,000元的部分 10 210
3. 超过12,000元至25,000元的部分 20 1410
4. 超过25,000元至35,000元的部分 25 2660
5. 超过35,000元至55,000元的部分 30 4410
6. 超过55,000元至80,000元的部分 35 7160
7. 超过80,000的部分 40 15160
*/
Scanner s=new Scanner(System.in);//调用键盘输入功能Scanner
System.out.println("个税计算器");
while(true){//进入while循环
System.out.println("请输入您的月薪:");
double salary= s.nextFloat();//月薪可以用float,double和int(前两者是可带小数的,最后一个是整数)
double extraMoney=salary-5000;//应纳所得额(各项社会保险费=0)
double tax=0;//应纳税额
double realSalary=salary-tax;//实发工资
if(extraMoney<0){
System.out.println("个税起征点为5000元,不需要缴税");
}else if(extraMoney<=3000) {
tax= extraMoney*0.03-0;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
} else if(extraMoney<=12000&extraMoney>3000){
tax= extraMoney*0.1-210;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else if(extraMoney<=25000&extraMoney>12000){
tax= extraMoney*0.2-1410;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else if(extraMoney<=35000&extraMoney>25000){
tax= extraMoney*0.25-2660;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else if(extraMoney<=55000&extraMoney>35000){
tax= extraMoney*0.3-4410;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else if(extraMoney<=80000&extraMoney>55000){
tax= extraMoney*0.35-7160;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else if (extraMoney>800000){
tax= extraMoney*0.4-15160;
realSalary=salary-tax;
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}else{
System.out.println("应纳税额:"+extraMoney+"纳税税额:"+tax+"实发工资:"+realSalary+"\t");
}
//在这里设置exit、next和continue命令可以做到一个上一个while(true)的闭环
System.out.println("请输入命令(exit);");
s.nextLine();//先运行一下,可以解决下面nextLine()键盘输入跳过不让输入的问题
String command=s.nextLine();
System.out.println(command+"======");
if("exit".equals(command)) {
System.out.println("退出软件");
break;
}
}
}
}