2014语言程序设计电子历.docVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目 录 一、设计思路 二、功能实现详细设计 三、测试结果分析 四、用户手册 五、设计体会 一、设计思路: If语句: 判断该年是否为闰年,判断一年是否为闰年需要符合下面二者之一:1,能被4整除,但不能被100整除。2,能被400整除。满足上述条件时,返回值为1,否则返回值为0。 day函数: 判断某年某月最多多少天,定义一个十二个元素的数组a[12],给十二个月的天数分别赋初值31、28、31、30、31、30、31、31、30、31、30、31。调用runnian函数,当if语句中条件为真实即返回值为1时,将二月份改为29天,即a[1]=29。 week函数: 判断某年某月某日的编号,根据公式(年份-1)+(年分-1)除以4-(年份-1)除以100+(年份-1)除以400+该天是该年的第几天(调用day2函数),把算出的值赋给number,再用number除以7取余数,即得到某年某月某日的编号。 定义一个字符型指针变量,利用switch语句,当number=0时,使指针指向星期日;当number=1时,指针指向星期一;当number=2时,指针指向星期二;当number=3时,指针指向星期三;当number=4时,指针指向星期四;当number=5时,指针指向星期五;当number=6时,指针指向星期六;当number不是上述数值时,指针指向错误。 x函数: 输出该天星期几,调用week1函数,将编号的值赋给number,调用*week2函数,根据number的值,确定指针指向,从而输出星期几,输出年,月,日,星期几。 显示月历,先输出星期日 星期一 星期二 星期三 星期四 星期五 星期六,星期日。 检验有效性,即当输入的年小于零、月小于一或大于十二、天大于该月最大值(调用day1函数)时将0返回给主函数,否则将1返回给主函数 nianli函数: 输出年历,先调用runnian函数,定义变量i,赋初值为1,利用for循环,循环十二次,调用x2函数,输出各个月的月历,从而显现出该年的每一天达到年历的效果。 yueli函数: 输出月历,先调用runnian函数,调用showmonth函数,输出该月月历。 rili函数: 输出日历,先调用函数,调用printmonth函数,输出该日日期。 二、功能实现详细设计: 输入选择---选择+回车键---输入相应信息+回车键---输出结果。 流程图如下: 程序包含多个函数,分别为main函数、nianli函数、yueli函数、rili函数、nongli函数、printmonth函数、printyear函数、SelectMenu函数、HandleMenu函数、showmonth函数、week1函数、*week2函数、day1函数、day2函数。通过函数间的调用,实现程序的运行。 详细程序 #includestdio.h #includestdlib.h void nongli() { int j; printf(\n\n\t\t\t\t 2012年1月\n); printf(\n\t星期日 星期一 星期二 星期三 星期四 星期五 星期六\n\n); for(j=1;j=31;j++) { printf( \t%d ,j); if(j==7||j==14||j==21||j==28) printf(\n); if(j==7) { printf(\t元旦\t初九\t初十\t十一\t十二\t十三\t十四\t\n); } if(j==14) { printf(\t十五\t十六\t十七\t十八\t十九\t廿十\t廿一\t\n); } if(j==21) { printf(\t廿二\t廿三\t廿四\t廿五\t廿六\t大寒\t廿八\t\n); } if(j==28) { printf(\t廿九\t春节\t初二\t初三\t初四\t初五\t初六\t\n); } if(j==31) { printf(\n); printf(\t初七\t初八\t初九\n); } } } void printtab(int n) { while (n0) { printf(\t); n--; } } #include stdio.h char MonthDay[]={31,28,31,30,31,30,31,31,30,31,30,31}; char MonthDayLeap[]={31,29,31,30,31,30,31,31,30,

文档评论(0)

DohoTgfhlo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档