package cn.cai.www;
//万年历
import java.util.Calendar;
import java.util.Scanner;
public class Test2{
public static void main(String[] args){
System.out.println(\"请输入年份\");
Scanner in=new Scanner(System.in);
int year=in.nextInt();
System.out.println(\"请输入月份\");
int month=in.nextInt();
while(month>=13){
System.out.println(\"一年只有12个月,请重新输入月份\");
month=in.nextInt();
}
int week=Test2.getDayofWeek(year,month);//week代表1号是星期几
int day=Test2.getDay(month,year);
System.out.println(\"星期日\星期一\星期二\星期三\星期四\星期五\星期六\");
for(int j=1;j<=week;j++){
System.out.print(\"\\");
}
for(int i=1;i<=day;i++){
System.out.print(i+\"\\");
if((i+week)%7==0){
System.out.println();
}
}
}
//给定的年份和月份下,当月1号是星期几
public static int getDayofWeek(int year,int month){
Calendar c = Calendar.getInstance();
c.set(year,month-1,1);
return c.get(Calendar.DAY_OF_WEEK)-1;
}
//判断当月多少天?
public static int getDay(int month,int year){
int day;
if(month==2){
if(year%4==0&&year%100!=0||year%400==0){
day=29;
}else{
day=28;
}
}else{
if(month==4||month==6||month==9||month==11){
day=30;
}else{
day=31;
}
}
return day;
}
}