问答详情
源自:4-2 分支结构之简单if-else语句

这逻辑问题出在哪?不是满足了被100整除也可被400整除为闰年或被4整除为闰年的条件么?

if((year%400==0&&year%100==0)||year%4==0)


提问者:skrwan 2016-07-16 14:49

个回答

  • 我改名字了
    2016-08-11 11:16:35
    已采纳

    一:(year%400==0&&year%100==0)无意义。能整除400的不能整除100吗?

    二:()没有意义。&&和 | | 是分优先级的,&&高于||  所以没有括号,不管在前在后都一定先算&&后算||。

    三:年份year被400取余为0一定是闰年。year不能被4取余为0的一定是平年。

          能被4取余为0并且不是100的倍数,才是闰年。

    由此得出

    (year%400==0||year%4==0&&year%100!=0)

  • 天龙tc
    2016-07-16 16:29:49

    ①、普通年能被4整除且不能被100整除的为闰年.(如2004年就是闰年,1901年不是闰年)②、世纪年能被400整除的是闰年.(如2000年是闰年,1900年不是闰年)