C语言 if语句嵌套问题(超重点+附图+高分)

如题所述

第1个回答  2013-10-12
Q1:①中的if 成立条件:③中的if(year%4==0)成立,并且②中if(year%100==0)成立,并且①中if(year%400==0)成立的 。 请问大神是不是?


--------------------------------------------------------------------------------------------------------------
Q2: ②中if成立的条件:③中if(year%4==0)成立下,并且②中if(year%100==0)成立,请问大神是不是?


如果是的话,为什么②中的if成立的条件下,没有leap=0,而在②中else有leap=1;
这个程序应该是算输入的年份是不是闰年吧,能被4整除且又能不能被100整除 是闰年
能直接被400整除也是闰年,②成立的条件是在能被4整除的前提下又能被100,根据闰年的定义,如果只是能被4整除又能被100整除而不能被400整除那就不是闰年此时leap=0,如果能被4整除也能被100整除又能被400整除那就是闰年,因为定义中只要能被400整除就是闰年,所以此时leap=1

如果添加的话 leap=0应该放在哪里呢?
----------------------------------------------------------------------------------------------------------------------
Q3:③中if成立的条件:只需要③中的if(year%4==0),请问大神是不是?
是,if(year%4==0)是判断闰年的前提,只有能被4整除,才有可能是闰年
为什么①中的if语句成立之后,没有leap=1;而①中的else 却有leap=0 ?
①if成立之后有leap=1。。。。。。还是闰年的定义,①的前提是能被4整除了,也能被100整除了,此时有两种情况,就是看输入的年份是否也能被400整除,是的话leap=1,不是的话leap=0

但是③中的else leap=0;也不对啊, 因为不满足③中的if(year%4==0)的else 也不一定是 leap=0啊???
③中if是大前提,如果不能被4整除那么他就不是闰年。。。。。。
有什么问题可以追问

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网