/*日历—— 输入1980年到2080年之间的某年某月,输出其相连的三个月,并且和星期对上*/
#define N 1980
main()
{int s=-1,a=1,i,j,x,p,y=N,z,n,m,k=1,t[1200];
printf("\nplease input a year number and month number:");
scanf("%d.%d",&p,&m);
for(z=m-1;z<=m+1;z++)
{printf("\n \t SU MO TU WE TH FR SA\n " );
for(i=0;i<70;i++)printf("=");
printf("\n %d.%d",(z>0?(z>12?(p+1):p):(p-1)),(z>0?(z>12?z%12:z):12));
x=fun(p,z);
t[1]=2;
while(a<1200)
{t[a+1]=(fun((k%12==0?(y++):y),(k%12==0?12:k%12))+t[a])%7;
a++; k++;}
for(n=0;n<t[(p-N)*12+z];n++)
{printf("\t ");}
for(j=1;j<=x;j++)
{printf("\t%d",j);
if((j+t[(p-N)*12+z])%7==0)
printf("\n\t"); }
}
}
int fun(int y,int m)
{
if(m==4||m==6||m==9||m==11)
return 30;
else if(m==2)
{if(y%4!=0)
return 28;
if(y%4==0)
return 29; }
else
return 31;
}
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |