#include <stdio.h>
int leapChk(int y);
int month[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
char *week[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
int wd(int y, int m, int d)
{
int td = 5;
for (int i = 2000; i <= y; i++)
{
if (y != i)
{
if (leapChk(i))
td += 366;
else
td += 365;
}
else
{
for (int j = 1; j < m; j++)
{
td += month[j];
}
}
}
td += d;
return td % 7;
}
int main()
{
int y, m, d,j, n, fd;
int leapyear = 0;
int cnt;
scanf("%d %d %d", &y, &m, &d);
leapyear = leapChk(y);
if (leapyear == 1)
month[2] = 29;
else
month[2] = 28;
if (y < 2000 || y > 2010 || m < 1 || m > 12 || d < 1 || d > month[m])
{
printf("INPUT ERROR!\n");
}else {
n = wd(y,m,d);
fd = wd(y,m,1);
printf("%d. %d\n", y, m);
printf("sun mon tue wed thu fri sat\n");
for(int i=0; i<fd; i++){
printf(" ");
}
for(int i=1; i<=month[m]; i++){
cnt = fd%7;
printf("%3d",i);
if(cnt != 6) printf(" ");
else printf("\n");
fd++;
}
printf("\n%s", week[n]);
return 0;
}
}
int leapChk(int y)
{
int leapyear = 0;
if (y % 400 == 0)
leapyear = 1;
else if (y % 4 == 0 && y % 100 != 0)
leapyear = 1;
return leapyear;
}
To embed this project on your website, copy the following code and paste it into your website's HTML: