java语言实现通过输入年份和月份,来输出月历
输入样例
请输入年份:2020
请输入月份:2
输出样例
日 一 二 三 四 五 六
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
实现逻辑
关键在于解决两个问题:
1.如何确定该月1号是星期几
2.如何保证输出时每七个数字换一行
解决方案
1.1900年的一月一日是星期一,只要知道了1900年1月1日到输入年份和月份的前一个月的总天数,然后再对7取余即可知道本月1号是周几。
如:1900.1.1~2020.1.31的总天数为43860天,43860%7=5,说明上个月最后一个星期有五天,2月1号则为周一。
2.每隔7天换一行则采用\n换行符即可。
注意:闰年平年,大月小月天数都不一样
import java.util.Scanner;
public class WeekJob01 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入年份:");