<span style="font-size:18px;">//蔡勒公式计算输入年月日,求该天是星期几
#include<stdio.h>
int main()
{
int year,month,day;
while(scanf("%d%d%d",&year,&month,&day)!=EOF)
{
if(month == 1||month == 2)//判断month是否为1或2
{
year--; //某年的1、2月要看作上一年的13、14月
month += 12;
}
int c = year / 100; //年份前两位数
int y = year - c * 100; //年(后两位数)
int week = (c / 4)- 2 * c + (y + y / 4) + (13 * (month + 1) / 5) + day - 1; //蔡勒公式
while(week < 0)
{
week += 7;
}
week %= 7;
switch(week)
{
case 1:
printf("星期一\n");break;
case 2:
printf("星期二\n");break;
case 3:
printf("星期三\n");break;
case 4:
printf("星期四\n");break;
case 5:
printf("星期五\n");break;
case 6:
printf("星期六\n");break;
case 0:
printf("星期天\n");break;
}
}
return 0;
}</span>