答案
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开始
答案仅供参考,如有更优解,可在评论区参与讨论
Comments NOTHING