计算星期几

作者:

一个短小、高效的 C++函数,用来判断指定日期是星期几:

int day_of_week(int y, int m, int d)    /* 0 = Sunday */
{
    static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
    y -= m < 3;
    return (y + y/4 - y/100 + y/400 + t[m-1] + d) % 7;
}

注意, 0 表示星期日, 1-6 表示星期一到星期六。

Q. E. D.

类似文章:
编程 » C++
C++的浮点数转整数有四种方法,直接类型转换、round、floor、ceil。其效果如下表:
编程 » C++, 编译错误
在 gcc 中,存在继承关系的模版类,子类无法直接访问父类的成员,即使该成员是 protectedpublic
2007 年,我们 讨论过一个算法问题 , perfect shuffle ,据称是个微软面试题:
编程 » C++, C++11
花括号初始化是 C++11 引入的一种初始化方法。
注: 这个问题来自 China Theory Week 2008 的 Open Problems Session。
编程 » C++, C++11
花括号初始化是 C++11 引入的一种初始化方法。
boost 是除 std 外最常用的 C++库,覆盖很多常用操作。目前最新的版本是 1.59.0