打印 每一年度的日历及该日历每一周在该年度中属于第几周
package unitTest_code.test.Calendar;
/***
* 打印 每一年度的日历及该日历每一周在该年度中属于第几周
*
*/
import java.util.Scanner;
public class Calendar {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入年份(1900——2099):");
int year = input.nextInt();
int Total = 0;//统计总天数
final String WeekHead="日\t一\t二\t三\t四\t五\t六";
if(year>=1900&&year<=2099){
boolean isLeapYear = ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? true : false;
int[]aa=new int[isLeapYear?366:365];//创建数组
//统计天数
for (int i = 1900; i < year; i++) {
Total += ((i % 4 == 0 && i % 100 != 0) || i % 400 == 0) ? 366 : 365;
}
Total%=7;
//将星期几存入数组中,每一天都对应了星期几
for (int i = 0; i <aa.length ; i++,Total++) {
Total%=7;
aa[i]=Total;
}
// 输出每个月的日历
int count=0;
int weekCount=0;
for (int i = 1; i <=12 ; i++) {
System.out.println("\n"+year+"年"+i+"月");
System.out.println(WeekHead);
int maxday = 31;
switch (i){//判断月份的最大天数
case 2:
maxday = isLeapYear?29:28;
break;
case 4:case 6:case 9:case 11:
maxday =30;
break;
}
for (int j = 0; j <=aa[count] ; j++) {
if((aa[count]+1)%7==0)
break;
else{
System.out.print("\t");
}
}
for (int j = 1; j <=maxday ; j++) {
System.out.print(j +"\t");
if((aa[count]+1+j)%7==0&&j!=maxday){
weekCount++;
System.out.println( "第"+weekCount+"周");
}
}
count+=maxday;
}
}else {
System.out.println("年份输入有误,请重试");
}
}
}
请输入年份(1900——2099):
2020
2020年1月
日 一 二 三 四 五 六
1 2 3 4 第1周
5 6 7 8 9 10 11 第2周
12 13 14 15 16 17 18 第3周
19 20 21 22 23 24 25 第4周
26 27 28 29 30 31
2020年2月
日 一 二 三 四 五 六
1 第5周
2 3 4 5 6 7 8 第6周
9 10 11 12 13 14 15 第7周
16 17 18 19 20 21 22 第8周
23 24 25 26 27 28 29
2020年3月
日 一 二 三 四 五 六
1 2 3 4 5 6 7 第9周
8 9 10 11 12 13 14 第10周
15 16 17 18 19 20 21 第11周
22 23 24 25 26 27 28 第12周
29 30 31
2020年4月
日 一 二 三 四 五 六
1 2 3 4 第13周
5 6 7 8 9 10 11 第14周
12 13 14 15 16 17 18 第15周
19 20 21 22 23 24 25 第16周
26 27 28 29 30
2020年5月
日 一 二 三 四 五 六
1 2 第17周
3 4 5 6 7 8 9 第18周
10 11 12 13 14 15 16 第19周
17 18 19 20 21 22 23 第20周
24 25 26 27 28 29 30 第21周
31
2020年6月
日 一 二 三 四 五 六
1 2 3 4 5 6 第22周
7 8 9 10 11 12 13 第23周
14 15 16 17 18 19 20 第24周
21 22 23 24 25 26 27 第25周
28 29 30
2020年7月
日 一 二 三 四 五 六
1 2 3 4 第26周
5 6 7 8 9 10 11 第27周
12 13 14 15 16 17 18 第28周
19 20 21 22 23 24 25 第29周
26 27 28 29 30 31
2020年8月
日 一 二 三 四 五 六
1 第30周
2 3 4 5 6 7 8 第31周
9 10 11 12 13 14 15 第32周
16 17 18 19 20 21 22 第33周
23 24 25 26 27 28 29 第34周
30 31
2020年9月
日 一 二 三 四 五 六
1 2 3 4 5 第35周
6 7 8 9 10 11 12 第36周
13 14 15 16 17 18 19 第37周
20 21 22 23 24 25 26 第38周
27 28 29 30
2020年10月
日 一 二 三 四 五 六
1 2 3 第39周
4 5 6 7 8 9 10 第40周
11 12 13 14 15 16 17 第41周
18 19 20 21 22 23 24 第42周
25 26 27 28 29 30 31
2020年11月
日 一 二 三 四 五 六
1 2 3 4 5 6 7 第43周
8 9 10 11 12 13 14 第44周
15 16 17 18 19 20 21 第45周
22 23 24 25 26 27 28 第46周
29 30
2020年12月
日 一 二 三 四 五 六
1 2 3 4 5 第47周
6 7 8 9 10 11 12 第48周
13 14 15 16 17 18 19 第49周
20 21 22 23 24 25 26 第50周
27 28 29 30 31
学问:纸上得来终觉浅,绝知此事要躬行
为事:工欲善其事,必先利其器。
态度:道阻且长,行则将至;行而不辍,未来可期
.....................................................................
------- 桃之夭夭,灼灼其华。之子于归,宜其室家。 ---------------
------- 桃之夭夭,有蕡其实。之子于归,宜其家室。 ---------------
------- 桃之夭夭,其叶蓁蓁。之子于归,宜其家人。 ---------------
=====================================================================
* 博客文章部分截图及内容来自于学习的书本及相应培训课程以及网络其他博客,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。 * @author Alan -liu * @Email no008@foxmail.com
转载请标注出处! ✧*꧁一品堂.技术学习笔记꧂*✧. ---> https://www.cnblogs.com/ios9/