基本运算符及应用:这是一个闰年吗?
任务描述 相关知识 Java算数运算符 Java关系运算符 Java逻辑运算符 编程要求 评测说明 任务描述 新中国成立的1949年是闰年吗?千禧2000年是闰年吗?那实训平台发布的2017年呢?本关的任务是编写一个Java程序,完成对一个年份是否是闰年的判断。想要实现这个小目标,我们需要了解Java基本运算的相关知识,并综合应用前面学到的基础知识。
相关知识 Java算数运算符 算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符:
运算符 描述
-
加法 - 相加运算符两侧的变量或值
-
减法 - 左操作数减去右操作数
-
乘法 - 相乘运算符两侧的变量或值 / 除法 - 左操作数除以右操作数 % 取模 - 左操作数除以右操作数的余数 ++ 自增 - 操作数的值增加1 – 自减 - 操作数的值减少1 Java关系运算符 关系运算符广泛应用与程序的条件判断、结构控制等方面。例如,运算符==通常应用与判断A和B是否相等。
运算符 描述 == 检查符号两边的操作数是否相等,如果相等,则运算式结果为真 != 检查符号两边的操作数是否不相等,如果不相等,则运算式结果为真
检查左操作数是否大于右操作数,如果是,则运算式结果为真 < 检查左操作数是否小于右操作数,如果是,则运算式结果为真 = 检查左操作数是否大于或等于右操作数,如果是,则运算式结果为真 <= 检查左操作数是否小于或等于右操作数,如果是,则运算式结果为真 Java逻辑运算符 逻辑运算符可以将多个必要条件进行组合,从而控制一条语句是否执行。例如,对于闰年的判断逻辑为:能被4整除但不能被100整除,或能被400整除的年份为闰年。要实现上述的条件组合,就必须用到逻辑运算。
运算符 描述 && 逻辑与运算符,当且仅当符号两边的操作数均为真,运算式结果为真 ‖ 逻辑或运算符,符号两边的操作数任意一个为真,运算式结果为真 ! 逻辑非运算符,反转操作数的逻辑状态,若操作数为真,运算式结果为假;反之为真 编程要求 本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下:
使用year变量保存从命令行输入的int型数据。 判断该年份是否为闰年,若是,输出Yes;否则输出No。 能被4整除但不能被100整除,或能被400整除的年份为闰年。在程序中使用if语句进行判断,这一点之后会继续学习,在本题会给出if语句的写法,只需补全小括号内的逻辑运算式。 评测说明 平台将自动编译补全后的代码,并生成若干组测试数据,接着根据程序的输出判断程序是否正确。
以下是测试样例:
测试输入: 2016 预期输出: Yes package step4;
import java.util.Scanner;
public class LeapYear { public static void main(String[] args) { int year; /********** Begin / Scanner in=new Scanner(System.in); year=in.nextInt(); //在此补全小括号内的逻辑运算式,以判断输入的年份是否为闰年 if (year%40&&year%100!=0||year%4000) { //判定输入的年份为闰年,执行下面大括号中的语句 System.out.println(“Yes”); } else { //判定输入的年份不是闰年,执行下面大括号中的语句 System.out.println(“No”); } /* End *********/ } }