C语言根据日期计算星期
公式:
基姆拉尔森计算公式
week = (day + 2 * month + 3 * (month + 1) / 5 + year + year / 4 - year / 100 + year / 400) % 7
day: 日期,范围 1-31。
month: 月份 ,范围3-14 ,当年的1,2月份处理为上一年的13,14月。
year: 年份,当月份为1,2月,year - 1。
week:星期,范围0-6,0为星期日。
int return_week_day(int year, int month, int day)
{int week = 0;if (month == 1 || month == 1 || month ==2){month += 12;year--;}// 使用基姆拉尔森计算公式week = (day + 2 * month + 3 * (month + 1) / 5 + year + year / 4 - year / 100 + year / 400) % 7;return (week + 1) % 7;
}