基姆拉尔森计算公式

用于计算一个日期是星期几

m 代表月份  d 代表日期  y代表年份

公式    w= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7 

所得到的w 代表星期         w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六

注意:

当年的1,2月要当成上一年的13,14月进行计算

#include<stdio.h>
int main(){
    int y,m,d,w;
    while(~scanf("%d%d%d",&y,&m,&d)){
        if(m==1||m==2){
            m+=12;y--;
        }
        w= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1)%7;
        printf("%d\n",w);
    }
}