Java编程实现月历.docx

Java编程实现月历.docx

ID:50826998

大小:38.19 KB

页数:4页

时间:2020-03-15

Java编程实现月历.docx_第1页
Java编程实现月历.docx_第2页
Java编程实现月历.docx_第3页
Java编程实现月历.docx_第4页
资源描述:

《Java编程实现月历.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、importjava.util.Scanner;/***键盘输入年份和月份,产生本月的月历(第一行显示周几,下面的行对应的是号数),周一是从1900年1月1号开始的**@authorAdministrator**/publicclassTest_7_11_5{publicvoidgetCalendar(){String[]week={"日","一","二","三","四","五","六"};Scannerinput=newScanner(System.in);System.out.println(""+""+"================月历查阅=======

2、===========");System.out.print("请输入年份:");intyear=input.nextInt();//输入年份//判断输入的年份是否在1990-2099之间if(year<1990

3、

4、year>2099){System.out.println("请输入1990-2099之间的年份!");}else{System.out.print("请输入月份:");intmonth=input.nextInt();//输入月份intday=0;//变量day用于存放该年该月的天数,用于后面的循环booleanisLeap=false;//标志位isLea

5、p用于判断输入的年份是否是闰年if(year%4==0&&year%100!=0

6、

7、year%400==0){isLeap=true;//如果year是闰年,则标志位isLeap置为true}if(month==1

8、

9、month==3

10、

11、month==5

12、

13、month==7

14、

15、month==8

16、

17、month==10

18、

19、month==12){day=31;//如果是大月,则本月有31天}elseif(month==4

20、

21、month==6

22、

23、month==9

24、

25、month==11){day=30;//如果是小月,则本月有30天//如果是2月,则闰年有29天,平年28天}els

26、eif(month==2){if(isLeap){day=29;}else{day=28;}}else{System.out.println("请输入正确的月份(1-12)!");//输入的年份必须是合法的,必须在1-12范围内}System.out.println(year+"年"+month+"月");for(inti=0;i<7;i++){System.out.print(week[i]+"t");}System.out.println();intyears=year-1990;//变量years用于存放要查询的年份与1990年之间的差值intsumOfDays=

27、0;//变量sumOfDays用于存放输入的年月与1990年1月之间相差的天数intcount1=0,count2=0;//下面的for循环用于确定1990年到输入的年份之间闰年和平年的个数for(inty=0;y

28、

29、year1%400==0){count1++;//count1个闰年}else{count2++;//count2个平年}}sumOfDays=366*count1+365*count2;//先算出输入年份与1990年之间相差的天数intbig=0,

30、small=0;intfebruary=0;for(intm=1;m

31、

32、m==3

33、

34、m==5

35、

36、m==7

37、

38、m==8

39、

40、m==10

41、

42、m==12){big++;//big个大月}elseif(m==4

43、

44、m==6

45、

46、m==9

47、

48、m==11){small++;//small个小月}elseif(m==2&&isLeap){february=29;//闰年2月29天}else{february=28;//平年2月28天}}intsumOfDays1=sumOfDays+31*big+30*small+february;//变量sumOfD

49、ays1表示1990年1月到输入的年月之间相差的天数intweek1=sumOfDays1%7+1;//判断输入的月份的第一天是星期几//打印输出月历//开头应该空多少位置for(intn=1;n<=week1;n++){if(week1!=7){System.out.print("t");}}//依次输出日for(intj=1;j<=day;j++){if((j+week1-1)%7==0){System.out.println();}System.out.print(j+"t");}}}publicstaticvoid

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。