基姆拉尔森计算公式,根据年月日计算工作日(星期几)。
计算式需要把把1月和2月作为上一年的13月和14月计算。
/*根据年月日计算星期几,返回0对应周日,1至6对应周1至周六 */
/*基姆拉尔森计算公式 */
// y 年 ; m 月 ; d日 ;
int weekday(int y,int m,int d) // 计算工作日
{
if((y>1)&&(m<=2)) //把一月份和二月份作为上一年的13月和14月计算。
{ y--; m+=12;}
return (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7;
}