永发信息网

一道关于java的问题

答案:6  悬赏:80  手机版
解决时间 2021-06-04 06:23

我用java编写一道求1945到2006的闰年的问题

(闰年就是能被4整除且不能被100整除 或 能被400整除的年份)

首先编写代码如下:

class leapyear{
public static void main(String args[]){
int year=1945;
while(year<=2006){
if((year%4==0 && year%100!=0 )||(year%400==0))
System.out.println(year+"是闰年");



year++;
}

运行正常,然后我用if-else-if改写如下:

class leap{
public static void main(String args[]){
int year=1945;
boolean x;
while(year<=2006){
if (year%4!=0)
x=false;
else if(year%100!=0)
x=true;
else if(year%400==0)
x=true;
else
x=false;
year++;

if(x=true)
System.out.println(year+"是闰年");

}
}

编译后运行,得到的结果却是1946-2006每一年都成了闰年……

请问错误出在哪里?


}






}
}


最佳答案
if(x=true)
改为
if(x==true)
全部回答

==和=是不一样的!!!

要双等于号

year++;放到if(x==true) System.out.println(year+"是闰年");

后面

刚才回答逻辑有错误- - 楼上二位的答案是正确的

public static void main(String args[]) { int year=1945; boolean x; while(year<=2006){ if (year%4!=0) x=false; else if(year%100!=0) x=true; else if(year%400==0) x=true; else x=false; year++;

if(x){ System.out.println(year+"是闰年"); } else{ System.out.println(year+"是平年"); } } }

// 或者x=true改为x==true

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
岳阳县岳阳嘉宝莉防水在哪里啊,我有事要去这
如何能学会坚强,且不是伪装的呢
怎么能让1市斤绿豆出14市斤绿豆芽呀
如何才能彻底的释放压力,
四圣兽光阴叙事诗天使谭的前面是什么
标致206现在多少钱
大兴西红门到石景山杨庄路怎么走?
恋人在一起久了,他们的感情会变的冷淡掉吗?
丝路英雄 装备升级跟没升级差别有多少
邵东县邵阳恋家家纺在哪里啊,我有事要去这里
猜字迷:星空岁月醉人心
韩寒的最新作品是什么啊
中国与苏俄历史
魔蝎女和水瓶男合适吗?
我的W595为什么那么迟钝
推荐资讯
What do you know about Nigeria? At a rough
如何让他懂我我喜欢他?
如何用邮箱登陆qq
有没有《老公给老婆的幸福条约》这篇文章.
龙沙区齐齐哈尔架子鼓非洲鼓我想知道这个在什
国内乐人有哪些玩布鲁斯不错的?
有谁知道那可以下载街头游戏啊?要中文版的。
我已经开通空间但是服务项目上没显示好友也进
qq怎么才可以升级快?
QQ问题:会员有什么方式开通升级最快?手机开通
摩托车比赛有哪些比较刺激的好玩的是单击版的
近三年美术高考题,要详细的。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?