(ID非公開)
例:
#include <stdio.h>
int leap(int y){
if (y % 400 == 0 || (y % 4 == 0 && y % 100 != 0))
return 1;
return 0;
}
int sday(int y,int m,int d){
// 1 2 3 4 5 6 7 8 9 10 11 12
int dd[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int sd=0,i;
if(leap(y))dd[1]=29;
for(i=0;i<m-1;i++)
sd += dd[i];
sd += d;
return sd;
}
int main(void){
char *wd[]={"SUN","MON","TUE","WEN","THU","FRI","SAT"};
int y,m,d;
int sd=0,w;
int i;
printf("yyyy/mm/dd >");
scanf("%d/%d/%d",&y,&m,&d);
for(i=1900;i<y;i++){
sd += 365 + leap(i);
}
sd += sday(y,m,d);
w = sd%7;
printf("%d/%02d/%02d(%s)\n",y,m,d,wd[w]);
return 0;
}
~~~~~~~~~~~~~~~~~~~~
yyyy/mm/dd >2022/6/24
2022/06/24(FRI)