#include <stdio.h>

#include"time.h"

main(){

 //
 struct tm t,*date;

 time_t t_day;

 int year,month;
 int month_day;
 int i,j;


 struct tm *local; 
 time_t t_mow; 
 t_mow=time(NULL); 
 local=gmtime(&t_mow); 

 //ݺ·
 printf("ݣ\n");
 scanf("%d",&year);
 printf("·ݣ\n");
 scanf("%d",&month );

 
 if(month==2 ){
  if(year%4==0 && year%100!=0)   
   month_day=29;
  else                           
   month_day=28;

 }
 else if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)  
 {
  month_day=31;  
 }
 else              //30
  month_day=30;


       
 printf("ǰʱǣ    ");
 printf(asctime(local)); 
 printf("\n\n");                                                                                                           


 printf("ǣ%d \n\n \n",month_day);  //ǰ

 printf("һ\t\t\t\t\t\t\t\n");   //ĵһУʾһ

 for (i=1;i<=month_day;i++)
 {
  t.tm_year=year-1900;
  t.tm_mon=month-1;
  t.tm_mday=i;
  t.tm_hour=0;
  t.tm_min=0;
  t.tm_sec=0;
  t.tm_isdst=0;
  t_day=mktime(&t);

  date=gmtime(&t_day); 

  //date->tm_wday  C ȡֵΪ060죬1һԴ
  //ǴĻ˿ʼģ12ǾҪ1µճ
  //13ǾҪ12µճ Դ
  
  if(i==1)
  {
   for(j=0;j<date->tm_wday;j++)
    printf("\t");
  }

  
  if(date->tm_wday==6)
  {
   printf("%d\n",i);
  }
  else
   printf("%d\t",i);
  
  
 }
 printf("\n\n",i);
}