根据年月日计算星期几(基姆拉尔森公式)
- 根据年月日计算星期几
- 主要是利用localtime函数(百度百科)获得计算机当前系统时间
- 然后根据基姆拉尔森计算公式转化为星期几
基姆拉尔森计算公式:
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
获取系统日期函数示例
[cpp]
#include <stdio.h>
#include <time.h>
int main()
{
struct tm *t; //获取系统时间
time_t tt;
time(&tt);
t=localtime(&tt);
printf(“%4d年%02d月%02d日\n”,t->tm_year+1900,t->tm_mon+1,t->tm_mday);
//tm也封装了时间,可以查看百度百科localtime;
return 0;
}
[/cpp]