星期几计算(C++)

思路:基姆拉尔森公式

//************************************
// Method: GetWeek
// Function: 判断给定的日期是星期几
// Parameter: year-年 mouth-月 day-日
//************************************
int GetWeek(int year, int mouth, int day)
{ 
	//基姆拉尔森计算公式
	if(year == 1 || year == 2)
	{ 
		// 1,2 月当成13,14 月
		mouth += 12;
		year--;
	}
	int week = (day + 2*mouth + 3*(mouth+1)/5 + year + year/4 
			- year/100 + year/400) % 7 + 1;
	// 其中 1~7 代表 周一到周日
	return week;
}

闰年判断:

year%4 == 0 && year%100 != 0 || year%400 ==0;
    原文作者:神之意向、
    原文地址: https://blog.csdn.net/qq_37018534/article/details/121161546
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞