练习——判断闰年

练习——判断闰年

需求

用户输入一个年份,判断该年份是否为闰年。

闰年判断规则

满足以下两个条件之一即为闰年:

  1. 能被 4 整除 并且​ 不能被 100 整除
  2. 能被 400 整除

实现思路

借助关系运算符(==、%、!=)和逻辑运算符(&&),结合三目运算符实现判断。

示例代码

public static void main(String[] args) {
    System.out.println("请输入一个年份:");
    int year = new Scanner(System.in).nextInt();
    System.out.println(
        year % 400 == 0 
        ? "是闰年" 
        : (year % 4 == 0 && year % 100 != 0 ? "是闰年" : "不是闰年")
    );
}Code language: JavaScript (javascript)

逻辑拆解

条件表达式
能被 400 整除year % 400 == 0
能被 4 整除且不能被 100 整除year % 4 == 0 && year % 100 != 0

整个表达式的执行顺序:

  1. 先判断 year % 400 == 0,若为 true 直接返回”是闰年”
  2. 若为 false,再判断 year % 4 == 0 && year % 100 != 0
  3. 第二个条件为 true 返回”是闰年”,为 false 返回”不是闰年”

测试示例

输入年份输出
2000是闰年(能被400整除)
2024是闰年(能被4整除且不能被100整除)
2100不是闰年(能被100整除但不能被400整除)
2023不是闰年(不能被4整除)

注意:也可以将条件合并为一个布尔表达式 year % 400 == 0 || (year % 4 == 0 && year % 100 != 0),再用三目运算符输出结果,写法更直观。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注