import java.util.Scanner;
public class 万年历 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println(“请输入年份”);
int year=sc.nextInt();
System.out.println(“请输入月份”);
int Month=sc.nextInt();
//计算从1900年到你输入前一年日期的天数
int totalDay=0;
for (int i=1900;i<year;i++){
//判断1900年到输入的年份的前一年的闰年
if((i%40&&i%1000)||i%4000){
totalDay+=366;
}else{
totalDay+=365;
}
}
//计算输入日期的年到你输入月份的天数
int days=0;
int MonthDays=0;
for (int i=1;i<Month;i++){
switch (i){
case 2:
days = ((year%40&&year%1000)||year%4000)?29:28;
break;
case 4:
case 6:
case 9:
case 10:
days=30;
break;
default:
days=31;
break;
}
if (i!=Month){
MonthDays+=days;
}
}
int totals=totalDay+MonthDays;
int weekDay=(totals+1)%7;
System.out.println(“日\t一\t二\t三\t四\t五\t六”);
//先打印月份第一天是星期几前面的空格
for (int i=1;i<=weekDay;i++){
System.out.print("\t");
}
for (int i=1;i<=days;i++){
System.out.print(i+"\t");
if ((weekDay+i)%7==0){
System.out.println();
}
}
}
}