为什么for循环里面if用能被400整除的条件算不出闰年
建议复习一下语文 对于闰年的定义
int i = 1949;
boolean flag = false;
while (i <= 1978){
if(flag){
System.out.println(i );
i += 4;
}else{
if((i % 4 == 0 && i % 100 != 0 ) || i % 400 == 0){
flag = true;
continue;
}
i++;
}
}
public class A {
public static void main(String[] args) {
for(int i = 1949;i <= 1978;i++){
if(i % 4 == 0 && i % 100 != 0 || i % 400 == 0){
System.out.println(i);
}
}
}
}
例如1976是闰年,但他不能被400整除
判断条件
1、能被4整除,而且不能被100整除
2、能被400整除
3、 && 的优先级高于 ||
public class AleapYear {undefined
public static void main(String[] args) {undefined
System.out.println("请输入年份:");
// 键盘动态输入
Scanner input =new Scanner(System.in);
// 捕捉异常
try {undefined
// 循环读取用户输入的值
while (true){undefined
// 循环读取用户输入的值
int year=input.nextInt();
if (year<1000 || year >9999)
System.out.println("请输入大于1000小于9999的年份");
else if (year %4==0 && year %100 !=0 || year %400==0){undefined
System.out.println(year+"年,是闰年");
}else {undefined
System.out.println(year+"年,是平年");
}
}
}catch (Exception e){undefined
System.out.println("请输入正确年份:");
e.getStackTrace();
}
}
}
有帮助的话采纳一下哦!谢谢!🙈🙈🙈