我已经制定了一套用来测试闰年的代码,但我希望增加一项修正案,规定是否过去这样做。为了达到这个目的,我增加了一个条件,如果输入碰巧是2012或更大,那么现在时态证明是正确的,否则它就假设过去时态。但是,它忽略了这个限定符,只执行第一个语句。任何帮助完成这一点将不胜感激。
代码如下
{
int input;
System.out.println("Enter year:");
Scanner keyboard = new Scanner(System.in);
input = keyboard.nextInt();
while (input >= 2012){
if ((input%4==0) && input%100!= 0)
{
System.out.println(input + " is a leap year.");
}
else if (input%400==0)
{
System.out.println(input + " is a leap year.");
}
else
{
System.out.println(input + " is not a leap year.");
}
}
while (input < 2012){
if ((input%4==0) && input%100!= 0)
{
System.out.println(input + " was a leap year.");
}
else if (input%400==0)
{
System.out.println(input + " was a leap year.");
}
else
{
System.out.println(input + " was not a leap year.");
}
}
}
}发布于 2012-09-23 08:42:47
我觉得你错了- while (input >= 2012)
使用if而不是while,即if (input >= 2012)
也是if (input <= 2012)
发布于 2012-09-23 09:00:45
我想你不知道什么是循环。它是一个循环,意味着它会重复,直到条件不满足为止。举个例子:
x=10
while(x!=0){ int dosomething = 1; x--}这个循环重复10次。因此,只需将时间更改为if,代码就会正常工作。
https://stackoverflow.com/questions/12473326
复制相似问题