用C语言编写万年历,详细代码.docVIP

  • 15
  • 0
  • 约4.04千字
  • 约 5页
  • 2016-09-10 发布于天津
  • 举报
用C语言编写万年历,详细代码.doc

/* welcome to use the WanNianLi system! */ #includestdio.h #includestdlib.h #includetime.h char* month_str[]={January,February,March,April,May,June,July,August,September,October,November,December}; char* week[]={Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday}; int leap (int year)//判断闰年 { if(year%4==0year%100!=0||year%400==0) return 1; else return 0; } int month_day(int year,int month) //判断这一个月有多少天 { int mon_day[]={31,28,31,30,31,30,31,31,30,31,30,31}; //初始化每个月的天数 if(leap(year)month==2 ) return 29; else return(mon_day[month-1]); } int firstday(int year,int month,int day)//判断这一个月的第一天是星期几 { int c=0; float s; int m; for(m=1;mmonth;m++) c=c+month_day(year,m); c=c+day; s=year-1+(float)(year-1)/4+(float)(year-1)/100+(float)(year-1)/400-40+c; return ((int)s%7); } int PrintAllYear(int year)/*print the all year*/ { int a,b; int i,j=1,n=1,k; printf(\n\n**************%d年的挂历**************\n,year); for(k=1;k=12;k++) { j=1,n=1; b=month_day(year,k); a=firstday(year,k,1); printf(\n\n%s(%d)\n,month_str[k-1],k); printf( Sun Mon Tue Wed Thu Fri Sat \n**************); if(a==7) { for(i=1;i=b;i++) { printf(%4d,i); if(i%7==0) { printf(**************\n**************); } } } if(a!=7) { while (j=4*a) { printf( ); j++; } for(i=1;i=b;i++) { printf(%4d,i); if(i==7*n-a) { printf(**************\n**************); n++; } } } printf(**************\n); } return 1; } //**************************************************** int main() { int option,da; char ch; int year,month,day; printf(Copyright @ 2005 TianQian All rights reserved!:):):)); printf(\n\nWelcome to use the WanNianLi system!\n); //调用系统时间 time_t tval; struct tm *now; tval = time(NULL); now = localtime(tval); printf(现在时间: %4d年 %d月 %02d日 %d:%02d:%02d\n, now-tm_year+1900, now-tm_mon+1, now-tm_mday,now-tm_hour, now-tm_min, now-

文档评论(0)

1亿VIP精品文档

相关文档