C日历相关操作


title: C日历相关操作
date: 2019-05-28 22:50:58
tags:
categories: c


获取某年某月的天数

int getDaysOfMounth(int y, int m) {//参数分别为年和月,返回值为天数
    int day;
        switch (m)
        {
        case 4:
        case 6:
        case 9:
        case 11:
            day = 30; break;
        case 2:
            day = 29; break;
        default:
            day = 31;
        }
        if (!(y % 4 == 0 && y % 100 != 0)&& m == 2)
            day = 28;
    return day;
}

获取某月第一天是周几

int getDayOfWeek(int y, int m) {
    if (m == 1 || m == 2) {
        m += 12;
        y--;
    }
    return(1 + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;
}//0表示周一,以此类推

你可能感兴趣的:(C日历相关操作)