#include <stdio.h>
void main()
{
int year, month, day, i =0, n = 0, week = 0;
int month_day[12] = {31, 28, 31, 30,31,30,31,31,30,31,30,31};
scanf("%d%d%d", &year, &month, &day);
if ((year%100 && year % 4 == 0) || (year%100 == 0 && (year % 400 == 0))){
month_day[1] = 29;
}
for (i=0; i < month -1; i++){
n += month_day[i];
}
n += day;
printf("day is %d\n", n);
week = (day + 2*month + 3*(month+1)/5 + year + year/4 - year/100 + year/400) % 7 + 1;
switch(week){
case 1:
printf("Monday\n");
break;
case 2;
printf("Tuesday\n");
break;
case 3:
printf("Wednesday\n");
break;
case 4:
printf("Thursday\n");
break;
case 5:
printf("Friday\n");
break;
case 6:
printf("Saturday\n");
break;
default:
printf("Sunday\n");
break;
}
return;
}
//国外是周日是第一天。
追问第几天输出后是负的
追答不是吧,你怎么调用的?我更新了代码,你使用最新代码了吗?
本回答被提问者采纳