1从键盘任意年份,输出显示500年内闰年数量以及前后各3个闰年年份;
2.输出显示500年内逢百的闰年年份;
3.显示完毕后继续等待用户输入字符并重复步骤1和2;
4.至少使用两种判断闰年的方法并在以上步骤中同时调用;
5.当用户输入自己的学号后4位时输出自己的姓名并结束程序运行;
JAVA中的闰年计算
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
关注 为了实现上述要求,我们首先需要定义判断闰年的方法,并编写代码来处理用户输入和显示结果。以下是一个Java程序实现:
import java.util.Scanner; public class LeapYearChecker { // 方法一:使用 if-else 语句判断闰年 public static boolean isLeapYearIfElse(int year) { if (year % 4 == 0) { if (year % 100 == 0) { return year % 400 == 0; } return true; } return false; } // 方法二:使用逻辑运算符判断闰年 public static boolean isLeapYearLogicalOperators(int year) { return (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String studentIdLastFourDigits = "你的学号后四位"; // 替换为你的学号后四位 while (true) { System.out.print("请输入一个年份:"); int year = scanner.nextInt(); // 找出500年内的闰年 int startYear = year - 250; int endYear = year + 250; int leapYearCount = 0; int[] leapYears = new int[10]; // 存储前后各3个闰年,共6个,再加逢百的闰年,最多10个 int leapYearIndex = 0; for (int currentYear = startYear; currentYear <= endYear; currentYear++) { if (isLeapYearIfElse(currentYear) && isLeapYearLogicalOperators(currentYear)) { leapYearCount++; // 如果是逢百的闰年 if (currentYear % 100 == 0) { System.out.println("逢百的闰年:" + currentYear); } // 存储前后各3个闰年 if (leapYearIndex < leapYears.length) { leapYears[leapYearIndex++] = currentYear; } } } // 显示结果 System.out.println("500年内闰年数量:" + leapYearCount); System.out.println("前后各3个闰年年份:"); for (int i = 0; i < Math.min(leapYearIndex, 6); i++) { System.out.println(leapYears[i]); } // 检查是否输入学号后四位结束程序 System.out.print("输入学号后四位以结束程序,否则继续输入年份:"); String input = scanner.next(); if (input.equals(studentIdLastFourDigits)) { System.out.println("你的名字是:你的姓名"); // 替换为你的姓名 break; } } scanner.close(); } }
这段代码做了以下事情:
- 定义了两个判断闰年的方法:
isLeapYearIfElse
和isLeapYearLogicalOperators
。 - 在主方法中,使用
Scanner
类从键盘读取用户输入的年份。 - 在一个无限循环中,计算500年内的闰年数量,并找出前后各3个闰年以及逢百的闰年。
- 使用两种闰年判断方法,确保只有同时满足两个条件的年份才被认为是闰年。
- 在每次循环结束时,询问用户是否要输入学号后四位来结束程序。如果输入匹配预设的学号后四位,则输出姓名并退出程序。
请注意,你需要将
studentIdLastFourDigits
和你的名字是:你的姓名
替换为你实际的学号后四位和姓名。此外,代码假设用户会按照提示正确输入年份和学号后四位,没有加入复杂的错误处理逻辑。在实际应用中,可能需要增加对输入合法性的检查。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报- 定义了两个判断闰年的方法:
悬赏问题
- ¥50 comsol温度场仿真无法模拟微米级激光光斑
- ¥15 上传图片时提交的存储类型
- ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
- ¥15 VB.NET如何绘制倾斜的椭圆
- ¥15 在rhel8中安装qemu-kvm时遇到“cannot initialize crypto:unable to initialize gcrypt“报错”
- ¥15 arbotix没有/cmd_vel话题
- ¥20 找能定制Python脚本的
- ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
- ¥15 用C语言怎么判断字符串的输入是否符合设定?
- ¥15 通信专业本科生论文选这两个哪个方向好研究呀