万年历C语言设计.docx

上传人:b****1 文档编号:2140897 上传时间:2023-05-02 格式:DOCX 页数:15 大小:261.86KB
下载 相关 举报
万年历C语言设计.docx_第1页
第1页 / 共15页
万年历C语言设计.docx_第2页
第2页 / 共15页
万年历C语言设计.docx_第3页
第3页 / 共15页
万年历C语言设计.docx_第4页
第4页 / 共15页
万年历C语言设计.docx_第5页
第5页 / 共15页
万年历C语言设计.docx_第6页
第6页 / 共15页
万年历C语言设计.docx_第7页
第7页 / 共15页
万年历C语言设计.docx_第8页
第8页 / 共15页
万年历C语言设计.docx_第9页
第9页 / 共15页
万年历C语言设计.docx_第10页
第10页 / 共15页
万年历C语言设计.docx_第11页
第11页 / 共15页
万年历C语言设计.docx_第12页
第12页 / 共15页
万年历C语言设计.docx_第13页
第13页 / 共15页
万年历C语言设计.docx_第14页
第14页 / 共15页
万年历C语言设计.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

万年历C语言设计.docx

《万年历C语言设计.docx》由会员分享,可在线阅读,更多相关《万年历C语言设计.docx(15页珍藏版)》请在冰点文库上搜索。

万年历C语言设计.docx

万年历C语言设计

万年历的设计:

要求:

模仿现实生活中的挂历,能够显示年历、月历、日历,并具备退出功能。

当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期几)。

当系统日期变到下一月时,系统自动翻页到下一月。

万年历的程序流程图:

主要程序流程图:

具体对于月份和年份的程序图如下:

上图为计算星期方法上图为打印日历程序图

万年历的设计的程序源代码:

#include

#include

#include

voidf()

{

intday,month,year,sum,leap,S;

printf("\n请输入年月日\n");

scanf("%d%d%d",&year,&month,&day);

while

(1)

{

if((month>12||month<1)||(day>31||day<1))

{

printf("输入错误,重新输入");

scanf("%d%d%d",&year,&month,&day);

}

elsebreak;

}

switch(month)

{

case1:

sum=0;break;

case2:

sum=31;break;

case3:

sum=59;break;

case4:

sum=90;break;

case5:

sum=120;break;

case6:

sum=151;break;

case7:

sum=181;break;

case8:

sum=212;break;

case9:

sum=243;break;

case10:

sum=273;break;

case11:

sum=304;break;

case12:

sum=334;break;

default:

printf("dataerror");break;

}

sum=sum+day;

if(year%400==0||(year%4==0&&year%100!

=0))

leap=1;

elseleap=0;

if(leap==1&&month>2)

sum++;

S=(year-1+(year-1)/4-(year-1)/100+(year-1)/400+sum)%7;

switch(S)

{

case1:

printf("星期一\n");break;

case2:

printf("星期二\n");break;

case3:

printf("星期三\n");break;

case4:

printf("星期四\n");break;

case5:

printf("星期五\n");break;

case6:

printf("星期六\n");break;

case0:

printf("星期日\n");break;

}

}

voidg()

{inti,j=1,k=1,a,b,month,year;

printf("\n输入年月:

\n");

scanf("%d%d",&year,&month);

while

(1)

{

if(month>12||month<1)

{

printf("输入错误,重新输入");

scanf("%d%d",&year,&month);

}

elsebreak;

}

b=days_month(month,year);

a=firstday(month,year);

printf("*************************************\n");

printf("SunMonTueWedThuFriSat\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*k-a)

{printf("\n");

k++;

}

}

}

printf("\n*************************************\n");

printf("\n");}

intleap(intyear)

{if(year%4==0&&year%100!

=0||year%400==0)

return1;

elsereturn0;

}

intdays_month(intmonth,intyear)

{

if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)

return31;

if(month==4||month==6||month==9||month==11)

return30;

if(month==2&&leap(year)==1)return29;

elsereturn28;

}

intfirstday(intmonth,intyear)

{intW;

W=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1;

returnW;

}

voidh()

{inti,j=1,k=1,a,b,month,year,g;

printf("\n输入任意年:

\n");

scanf("%d",&year);

for(g=0;g<=11;g++)

{

month=g+1;

b=days_month(month,year);

a=firstday(month,year);

printf("%d月\n",month);

printf("*************************************\n");

printf("SunMonTueWedThuFriSat\n");

if(a==7)

{for(i=1;i<=b;i++)

{printf("%4d",i);

if(i%7==0)

{printf("\n");

}

}

}

j=1;

k=1;

if(a!

=7)

{while(j<=4*a)

{printf("");

j++;

}

for(i=1;i<=b;i++)

{printf("%4d",i);

if(i==7*k-a)

{printf("\n");

k++;

}

}

}

printf("\n*************************************\n");

printf("\n");

}

}

voidmain()

{

for(;;){

switch(menu_select()){

case1:

printf("输入年月日计算星期几\n");f();

break;

case2:

printf("打印任意日历\n");g();

break;

case3:

printf("打印任意年历\n");h();

break;

case4:

printf("谢谢使用!

\n");

exit(0);

}

}

}

intmenu_select()

{

charS;

intcn;

printf("1.输入年月日计算星期几\n");

printf("2.打印任意月历\n");

printf("3.打印任意年历\n");

printf("4.谢谢使用!

\n");

printf("input1-4:

\n");

do{

S=getchar();

cn=(int)S-48;

}while(cn<0||cn>6);

returncn;

}

万年历的运行结果截图

万年历的日历功能的实现:

月历功能的实现:

年历功能的实现:

 

Welcome!

!

!

欢迎您的下载,

资料仅供参考!

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2