for(int i = 0;i<12;i++)
if(strcmp(b[0], months)==0)
two(i+1, e, strlen(ee[0]));
// if(strcmp(b[0], months)==0) printf("%s %d", months, i+1);
// add by function
return 0;
}
int one(int year) {
int adjust[7]={6, 7, 1, 2, 3, 4, 5}, date, tmp,counter = 0;
int db[12][42];
int i;
for( i = 0 ; i<12 ; i++ )
for(int j = 0;j<42;j++)
db[j]=0;
for(int month = 1;month<=12;month++) {
counter = 0;
date = adjust[cal(month, 1, year)];
for(int i = 1;i<date;i++) {
counter += 1;
}
for( i = 1;i<=31;i++) {
tmp = cal(month, i, year);
if(tmp>=0) {
date = adjust[tmp];
if(date) {
db[month-1][counter]=i;
counter += 1;
}
}
}
}
for(int h = 0;h<4;h++) {
if(h == 0)
printf(" January February March \n");
else if(h == 1)
printf(" April May June \n");
else if(h == 2)
printf(" July August September \n");
else if(h == 3)
printf(" October November December \n");
printf(" Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa\n");
for(int j = 0;j<6;j++) {
for(int i = 0;i<3;i++) {
for(int k = 0;k<7;k++) {
if(db[3*h + i][j*7+k]== 0)
printf(" ");
else printf("%3d", db[3* h +i][j*7+k]);
}
printf(" ");
}
printf("\n");
}
}
// add by function
return 0;
}
int two(int month, int year, int len) {
int adjust[7]={6, 7, 1, 2, 3, 4, 5}, date, tmp, counter = 0;
char *months[12]={"January", "February", "March","April", "May", "June",
"July", "August", "September","October", "November", "December"};
// add by function
int i;
date = adjust[cal(month, 1, year)];
// add by function
for( i=0 ; (unsigned)i<11-(strlen(months[1])+len+1)/2 ; i++)
printf(" ");
printf("%s %d\n", months[month-1], year);
printf(" Su Mo Tu We Th Fr Sa\n");
for( i=1; i<date; i++) {
printf(" ");
counter += 1;
}
for( i = 1;i<=31;i++) {
tmp = cal(month, i, year);
if(tmp>=0) {
date = adjust[tmp];
if(date) {
printf("%3d", i);
counter += 1;
if(counter %7 == 0)
printf("\n");
}
}
}