#include <stdio.h>
int GetWeek(int year,int month,int day)
{
int year_num = 0;
int leap_year_num = 0;
int year_dat_num = 31*7 + 28 + 30*4;
int total_dat_num = 0;
for(int i = 1970;i < year;i++)
{
if((i % 4 == 0 && i % 100 != 0) || i % 400 == 0)
{
leap_year_num++;
}
else
{
year_num++;
}
}
total_dat_num = leap_year_num * (year_dat_num+1) + year_dat_num*year_num;
if(month > 2)
{
for(int i = 1;i < month;i++)
{
if(i == 1 || i == 3 || i== 5 || i == 7 || i == 8 || i == 10 || i == 12)
{
total_dat_num += 31;
}else if(i == 2)
{
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
total_dat_num += 29;
else
total_dat_num += 28;
}else
{
total_dat_num += 30;
}
}
total_dat_num += day;
}else if(month < 2)
{
total_dat_num += day;
}else
{
total_dat_num += 31;
total_dat_num += day;
}
total_dat_num = (total_dat_num+2) % 7 + 1;
return total_dat_num;
}
int main()
{
int day = GetWeek(2021,11,25);
printf("%d\n",day);
return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)