C语言高手来指导

来源:百度知道 编辑:UC知道 时间:2024/06/24 09:05:44
大哥你看可以这样写吗
if(year%4==0)
leap=1
{
if(year%100==0)
leap=0
{
if(year%400==0)
leap=1;
else
leap=0;
}
else
leap=1;
}
else
leap=0;

不可以啊
需要以下格式
IF (){}
else (){}

对于你的程序来说year%4==0成立的话 仅仅执行 leap=1
而下面的也执行 不像你的初衷那样执行 下面的一长串

算闰年啊
应该这样写:
if((year%400==0)||((year%100!=0)&&(year%4==0))) {leap=1;}
//只有年份为400的倍数 或者 4的倍数但年份不是00结尾的年份是闰年
else leap=0;
//其他不是闰年
或者你用switch case语句吧,效率低点,但是简单,阅读也方便,具体就不给你写了,自己写吧