Contents

转:http://blog.csdn.net/syrchina/article/details/7330872

这个公式蛮好用的O(∩_∩)O~ 用这公式吧ZOJ 3876也给秒了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

#include <stdio.h>

char WeekList[ ][7]={"星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"};

void dateToWeek(int y,int m, int d)
{

if (m==1 || m==2)
{
m+=12;
y--;
}
int iWeek=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;
printf("%s\n", WeekList[iWeek]);
}
int main()
{

int year=0,month=0,day=0;

printf("请输入日期(2000-1-1):");
scanf("%d-%d-%d",&year,&month,&day);
dateToWeek(year,month,day);

return 0;
}
Contents