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年左右还会有一天的误差,那时程序又要修正了。

 

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

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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值