C语言 判断某一日期是星期几

这个很有难度啊,首先要有个对比。。。假如在没有参照的情况下,只能从公元1年1月1日起开始推算

,然后计算距离现在有多少天。在对7取模。。。得到的余数可以判断是星期几。。。据说公元1年1月

1日是星期六吧?。。。总之很复杂,后来终于寻找到一种简便的方法,那就是高斯--泽勒公式,这个

公式真的很厉害。。。特地介绍下。。

 

高斯--泽勒公式:

A=(y+[y/4]-[y/100]+[y/400]+x ) mod 7 
星期几:A 
(A=0 为星期天!) 
公元年: y 
天数 :x( 由当年月份和日期定,即距离当年初的天数。例:2001/3/1 x=31+28+1 )


另外: 
1.公元1年1月1日是星期六。  
2.据说现行公历2800年左右还会有一天的误差,那时程序又要修正了。

 

有了这个公式就可以轻易的判断某个日期是星期几了。。其他的都容易解决。。。

希望能够帮助到需要的人。。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页