为什么判断闰年的时候有个leap=1

main()
{
int year,leap;
scanf("%d",&year);
if ((year%4==0&&year%100!=0))||(year%400==0))
leap=1; else leap=0;
if(leap)
printf("%d is\n",year);
printf("%d is not\n",year);
}问题在于:leap=1;else leap=0; if (leap) 这三句是否可以不要,我上机试过,不要也能正常运行,最后一句前面加个,else printf("%d is not\n",year);

第1个回答  2010-09-06
main()
{
int year,leap;//leap最好初始化
scanf("%d",&year);
//判断year是否为闰年
if ((year%4==0&&year%100!=0))||(year%400==0))
leap=1;//如果是,令leap=1;
else
leap=0;//否则令leap=0;

if(leap)//这里,如果leap为真,即不为0,即时闰年,所以输出该年
printf("%d is\n",year);
else//得加个else
printf("%d is not\n",year);//否则,输出不是!
}本回答被提问者采纳
第2个回答  2010-09-06
这段代码能 执行吗?turbo C 运行的?

main()
{
int year,leap;
printf("%d is\n",leap);//这里输出下, 看看leap 值是多少
scanf("%d",&year);
if ((year%4==0&&year%100!=0))||(year%400==0))
leap=1; else leap=0;
if(leap)
printf("%d is\n",year);
printf("%d is not\n",year);
}

leap 的作用就是标记 这一年是否是闰年

if(leap) // leap 非0 即为真,所以,这个要看编译器怎么处理的 leap初始化。结果可能放到不同的编译器下会有不用的结果。
第3个回答  2017-12-30
leap=1的时候记为闰年

相关了解……

你可能感兴趣的内容

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