以下是引用谁的益达在2010-11-5 10:32:35的发言:
有人给我讲解一下吗 有点不懂
我编写的这个 isLeap( ) 函数的函数体
return year%(year%100?4:400)==0;
如果用中文表述就是:
对于寻常年份(如2010、2011)用4去除年份year,如能除尽为闰年;反之
对于跨世纪年(如1900、2000)用400去除年份year,能除尽为闰年。
下面是与之等价的写法:
int isLeap( int year )
{
int chu; //除数变量
if(year%100!=0)chu=4; //寻常年份,除数为4
else chu=400; //跨实际年,除数为400
if(year%chu==0) //如果能除尽
return 1; //为闰年
else //否则
return 0; //为平年
}