答案

import java.util.Scanner;
public class Main {
    public static void main(String[] args)
	{
    Scanner in=new Scanner(System.in);
	int [] day= {31,28,31,30,31,30,31,31,30,31,30,31};
		int month=in.nextInt();
		int year=in.nextInt();
		if(month==2)
		{
			if ((year%400==0)||(year%4==0 && year%100!=0)) 
			System.‬‌‌‌‌‌‌‍‌‬‍‌‌‌‌‌out.println(29);
		    else {
			    System.out.println(28);
			    }
		}
		else {
			System.out.println(day[month-1]);
		}
    }
}

这道题和之前C语言的一道题很像,拿过来用就是(bushi)

思路:先定义一个数组,存有非闰年情况下每个月的天数,再判断是否是二月,如果不是二月,闰年和非闰年天数一样,直接输出即可。若是二月,才考虑是否闰年,再输出对应天数

参考文献:Java中的数组-菜鸟教程

易错点:1、数组定义出错 2、数组下标应从0开始

答案仅供参考,如有更优解,可在评论区参与讨论

届ける言葉を今は育ててる
最后更新于 2022-04-02