C语言万年历代码.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:3 大小:12KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

C语言万年历代码.doc

C语言万年历代码.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

#include<stdio.h>main(){voidprint_head(intx,inty);/*打印头文件*/voidprint_month(intx,inty);/*打印月历*/intdays_of_month(intx,inty);/*计算指定年月的天数*/intleap(intx,inty);/*计算指定年月1号是星期几*/inti,days,year,month,firstday;charchoose;do{printf("\n\npleaseinputtheyear(0000~9999):\n\n");scanf("%d",&year);if(year<0||year>9999)printf("WANNING:ERROR,pleaseinputagain!");}while(year<0||year>9999);printf("\n\n");do{printf("pleaseinputthemonth(0~12)\n\n\n");scanf("%d",&month);if(month<=0||month>12)printf("WANNING:ERROR,pleaseinputagain!");}while(month<=0||month>12);printf("\n\n");days=days_of_month(year,month);/*调用函数*/firstday=leap(year,month);print_head(year,month);print_month(firstday,days);choose=getchar();printf("\n\n\n");printf("wouldyouliketocontinue(y/n):\n\n");scanf("%c",&choose);if(choose=='y'||choose=='Y')main();}days_of_month(intx,inty){intz;switch(y){case1:case3:case5:case7:case8:case10:case12:z=31;break;case4:case6:case9:case11:z=30;break;case2:{if((x%4==0&&x%100!=0)||(x%400==0))z=29;elsez=28;break;}}returnz;}leap(intx,inty){intz,i,moday;z=(x+(x-1)/4-(x-1)/100+(x-1)/400)%7;for(i=1;i<y;i++){moday=days_of_month(x,i);/*钳套调用函数*/z=(z+moday)%7;}returnz;}voidprint_head(intx,inty){printf("\n\n********************************************************************************\n\n");printf("\t\t\t\t%d%d\n\n",x,y);printf("\t\t\tSUNMONTUEWEDTHUFRISAT\n");printf("\t\t\t");}voidprint_month(intx,inty){inti;charspace[7]={''};for(i=1;i<=x;i++)printf("%4c",space[i]);for(i=1;i<=y;i++){if((i+x)%7==1)printf("\n\t\t\t%4d",i);elseprintf("%4d",i);}printf("\n\n********************************************************************************\n\n");}