函数参数: year-年, month-月, day-日
函数返回: 0-星期天, 1-星期一, 2-星期二, 3-星期三, 4-星期四, 5-星期五, 6-星期六
static int calcWeekDay(int year, int month,int day)
{
const int arr[13]={0,0,3,3,6,1,4,6,2,5,0,3,5};
int calc;
int weekday;
year %= 400;
if ((year==0||year%4==0&&year%100!=0)&&month<3)
calc = 5;
else
calc = 6;
weekday = (year+year/4-year/100+arr[month]+day+calc)%7;
return weekday;
}
算法的精髓主要在于arr数组的使用, 有兴趣的朋友可以深入理解本函数, 不想浪费时间可以直接调用
本文介绍了一个用于计算特定日期是星期几的算法,并提供了一个具体的C语言函数实现。该函数通过输入年、月、日参数,返回对应的星期数值。
1万+

被折叠的 条评论
为什么被折叠?



