//通过输入年份月份而自动输出日历表,如windows自带日历
import java.util.Scanner;
public class A4_26 {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("请输入年份:");
int year=in.nextInt();
System.out.println("请输入月份");
int month=in.nextInt();
int sum=0;
for(int i=1900;i<year;i++){
if(i%4==0&&i%100!=0||i%400==0){
sum+=366;
}else{
sum+=365;
}
}//判断年份
for(int i=1;i<month;i++){
if(i==2){
if(year%4==0&&year%100!=0||year%400==0){
sum+=29;
}else{
sum+=28;
}
}else{
if(i==4||i==6||i==9||i==11){
sum+=30;
}else{
sum+=31;
}
}
}//判断月份
sum+=1; //----------------就这个地方,请大神帮解疑惑
int wekday=sum%7;//判断这天是星期几
System.out.println("日\t一\t二\t三\t四\t五\t六");
for(int i=1;i<=wekday;i++){
System.out.print("\t");//向前空出几个空格
}
for(int i=1;i<=30;i++){
if (sum%7==6){
System.out.print(i+"\n");//1900年1月1日是周一,向后是6天换行
}else{
System.out.print(i+"\t");
}
sum++;
}
}
}