注册 登录
编程论坛 C++教室

C++根据日期判断当前的星期几的问题

zpfly100 发布于 2016-04-07 10:19, 3536 次点击
大家好:
向各位大声请教一下这个代码怎么来的,讲解一下,这是一个根据日期算出是星期几的方法
//    判断某一天是一周的星期几
int WNL::search_day(int month, int day)   
{
    int wk;

    wk = year > 0 ? (5 + (year + 1) + (year - 1)/4 - (year- 1)/100 + (year - 1)/400) % 7
        : (5 + year + year/4 - year/100 + year/400) % 7;

    wk = month > 2 ? (wk + 2*(month + 1) + 3*(month + 1)/5) % 7
        : (wk + 2*(month + 2) + 3*(month + 2)/5) % 7;

    if (is_leap_year() && month > 2)
    {
        wk = (wk + 1) % 7;
    }
    wk = (wk + day) % 7;
    return wk;

}

1 回复
#2
yangfrancis2016-04-07 14:08
还是先在网上查一查人类语言表达的由月日推算星期几的算法再来讨论这个吧。直接看代码太有点那个了
1