public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int y = in.nextInt();
int m = in.nextInt();
int[] d = new int[]{31,28,31,30,31,30,31,31,30,31,30,31};
if((y%4==0&y%100!=0)||y%400==0) {
d[1]+=1;
System.out.println(d[y-1]);
}
else {
System.out.println(d[y-1]);
}
}
}
月份为2且为闰年时,输出的天数还是28,这是为什么?
改好了,顺便帮你简化了一下代码,希望采纳
public class Demo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入年份:");
int y = in.nextInt();
System.out.println("请输入月份:");
int m = in.nextInt();
int[] d = new int[]{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if ((y % 4 == 0 & y % 100 != 0) || y % 400 == 0) {
d[1] += 1;
}
System.out.println(d[m - 1]);
}
}
你输出 d[y-1] 不太对吧,应该是d[m-1]