蔡勒(Zeller)公式:
实现输入一个日期,判断这一天是星期几。
w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1
其中 m = 1 时,m = 13;
m = 2 时,m = 14;
注意:该公式仅仅适用于1585年10月15日以后。
#include<stdio.h>
int main()
{
int year,month,d,result;
scanf("%d %d %d",&year,&month,&d);
int w,c,y,m,temp;
c = year / 100;
y = year % 100;
if(month == 1)
m = 13;
else if(month == 2)
m = 14;
else
m = month;
w = y + (y / 4) + (c / 4) - 2 * c + (26 * (m + 1) / 10) + d - 1;
result = (w >= 0 ? (w % 7):(w % 7 + 7));
printf("%d",result);
return 0;
}