1.题目复述(难度等级:**)
定义方法:判断一个年份是否是闰年,如果是返回是闰年。举例 1999是闰年 如果不是返回1999不是闰年 普通闰年:公历年份是4的倍数,且不是100的倍数的,为闰年(如2004年、2020年等就是闰年)。 世纪闰年:公历年份是整百数的,必须是400的倍数才是闰年(如1900年不是闰年,2000年是闰年)。
2.问题/需求分析
通过输入一个数字,运用编写的方法判断该年份是否是闰年,并返回用户结果
3.模型抽象
运用求模%判断是否整除,文中“且”和“必须是”都是“&”与逻辑的运用
4.代码示例
public class LeapYear {
public static void main(String[] args)
{
System.out.println("请输入一个年份");
Scanner sc = new Scanner(System.in);//键入一个年份
int i = sc.nextInt();
if (i%4 == 0 && i % 100 != 0)//四的倍数且不是100的倍数条件
{
System.out.println(i+"是闰年");
}
else if (i % 100 == 0 && i % 400 ==0)//如果是100的倍数,判断是否是400的倍数
{
System.out.println(i+"是闰年");
}
else
{
System.out.println(i+"不是闰年");//都不满足时输出
}
}
}
运行结果:
5.总结
本文是if else if ...else的结构运用,还可用嵌套等别的方法进行
6.发展与优化
三个判断条件调换顺序会如何,为什么会这样写
闰月又改如何编写
非法输入的处理方法
怎样编写方法来打印输出50——2050年间的全部闰年