问题:
输入年和月,自动打印对应年月的日历。
补充知识:
1970年是Unix系统诞生的时间,所以人们把1970年定为Unix的元年,1970年1月1号是星期四。(这是计算机的一个参考值)
思路(仅供参考):
- 首先应该计算出这个月1号是星期几。要想解决1号是星期几,就得先计算出年天数,即截至这一年1月1号的天数。
- 用for循环,从1970年开始,闰年+366,平年+365;计算出月天数,即截至本月1号的天数。
- 再用for循环,从1月份开始,算出月天数;再用到闰年判断,再用switch来判断返回月天数。
- 用年天数加月天数,求得本月1号距离1970年1月1号的总天数。
- 用总天数来判断本月1号是星期几。
- 判断本月的总天数(用到switch语句)。
- 打印输出日历。
package workspace;
import java.util.Scanner;
public class calendar {
public static void main(String[] args) {
/**
* 1.先在页面版上提示输入信息 2.利用for循环判断从1970年到这一年的1月1号的总天数(润平年)。
* 3.再判断这年到该月份1号的天数,涵盖(if)润平年,确定1号星期几 4.确定这个月的天数(switch语句),然后开始打印
*/
// 信息输入
Scanner s = new Scanner(System.in);
try {
System.out.println("请输入年份:");
int year = s.nextInt();
System.out.println("请输入月份:");
int month = s.nextInt();

本文介绍了如何使用Java编程解决输入年月后自动打印对应年月日历的问题。首先计算该月1号是星期几,然后通过for循环和条件判断(如if和switch)来确定年份和月份的天数。最后,根据计算结果输出日历,重点讨论了闰年判断和日历格式化。解决问题的关键在于分析问题并将其分解为可管理的小部分,遵循良好的编程逻辑。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



