用My eclipse 应用if 和else的if语句,做出如下程序,求大神,求答案

2025-03-24 22:44:42
推荐回答(1个)
回答1:

import java.util.*;
import java.io.*;
public class Yugi{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        while(true){
            System.out.print("你的月收入是:");
            String line = scan.nextLine().trim();
            int money = 0;
            try{
                money = Integer.parseInt(line);
            }catch(NumberFormatException nfe){
                System.err.println("输入错误,程序退出");
                scan.close();
                break;
            }
            double rate = 0;
            double num = 0;
            if(money <= 500){
                rate = 5;
                num = 0;
            }else if(money > 500 && money <= 2000){
                rate = 10;
                num = 25;
            }else if(money > 2000 && money <= 5000){
                rate = 15;
                num = 125;
            }else if(money > 5000 && money <= 20000){
                rate = 20;
                num = 375;
            }else if(money > 20000 && money <= 40000){
                rate = 25;
                num = 1375;
            }else if(money > 40000 && money <= 60000){
                rate = 30;
                num = 3375;
            }else if(money > 60000 && money <= 80000){
                rate = 35;
                num = 6375;
            }else if(money > 80000 && money <= 100000){
                rate = 40;
                num = 10375;
            }else{
                rate = 45;
                num = 15375;
            }
            double x = (money - 1600) * rate * 0.01 - num;
            System.out.printf("应纳个税: %.2f%n", x);
        }
    }
}


//-----------------------------------------------------------------------

import java.util.*;
public class Yuma {
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        while(true){
            System.out.print("输入年份,月份:(如2015 12)");
            String line = scan.nextLine().trim();
            if(!line.matches("^\\d+[^\\d]+(0?[1-9]|(1[0-2]))$")){
                System.err.println("输入错误, 程序退出");
                scan.close();
                break;
            }
            String[] arr = line.split("[^\\d]+");
            int y = Integer.parseInt(arr[0]);
            int m = Integer.parseInt(arr[1]);
            int d = 0;
            if(m == 4 || m == 6 || m == 9 || m == 11){
                d = 30;
            }else if(m == 1 || m == 3 || m == 5 || m == 7 
                || m == 8 || m == 10 || m == 12){
                d = 31;
            }else{
                if(y % 400 == 0 || y % 100 != 0 && y % 4 == 0){
                    d = 29;    
                }else{
                    d = 28;
                }
            }
            System.out.println(y + " 年 " + m + " 月 有 " + d + " 天");
        }
    }
}