import java.util.Scanner;
class Calendar
{
/****************主程序*****************/
public static void main(String[] args)
{
System.out.println(
"输入年");
int year=input();
System.out.println(
"输入月");
int month=input();
System.out.println(
"星期日"+
'\t'+
"星期一"+
'\t'
+
"星期二"+
'\t'+
"星期三"+
'\t'+
"星期四"+
'\t'+
"星期五"+
'\t'+
"星期六"+
'\t');
layout(year,month);
}
/********************一条华丽丽的分割线****************/
/**********************方法:输入***************************/
public static int input(){
Scanner sc=
new Scanner(System.in);
int num=sc.nextInt();
return num;
}
/********************一条华丽丽的分割线****************/
/*********************判断月份的天数******************/
public static int month_days(
int x1,
int x2){
switch(x2){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:{
return 31;}
case 4:
case 6:
case 9:
case 11:{
return 30;}
case 2:{
if((x1%
4==
0&&x1%
100!=
0)||(x1%
400==
0)){
return 29;
}
else{
return 28;
}
}
default:{
return 0;}
}
}
/***********************华丽丽的分割线*****************/
/**********************计算总天数*********************/
public static int sum_days(
int m1,
int m2){
int sum_days=
0;
for(
int i=
1900;i<m1;i++){
for(
int j=
1;j<=
12;j++){
sum_days=sum_days+month_days(i,j);
}
}
for(
int k=
1;k<=m2;k++){
sum_days=sum_days+month_days(m1,k);
}
return sum_days;
}
/**********************华丽丽的分割线*******************/
/*********************最后的布局************************/
public static void layout(
int n,
int m){
int xx=(sum_days(n,m)-month_days(n,m))%
7;
for(
int i=
0;i<=xx;i++){
System.out.print(
" "+
"\t");
}
System.out.print(
" ");
for(
int j=
1;j<=month_days(n,m);j++){
System.out.print(
" "+j+
" "+
'\t'+
" ");
if((xx+j+
1)%
7==
0){
System.out.println();
System.out.print(
" ");
}
}
System.out.println();
}
/**********************华丽丽的分割线*******************/
}
转载请注明原文地址: https://ju.6miu.com/read-9037.html