万年历系统课程设计报告.docVIP

  1. 1、本文档共15页,可阅读全部内容。
  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文档。上传文档
查看更多
信息科学与技术学院 程序设计基础课程设计报告 题目名称: 万年历系统 学生姓名: 徐波波 学 号: 2011508020 专业班级: 计科1班 指导教师: 高攀 2012年 7 月 1 日 目 录 1 课程设计目的及要求 1 1.1设计题目 1 1.2设计要求 1 1.3其他要求 1 2课题总体设计 2 2.1系统功能模块图 2 2.2系统流程图 ..........................................................................................................2 3.详细设计 3 3.1 printWNL() 3 3.2 isRunNian()模块设计 4 3.3 getDays模块设计 5 3.4 主函数main()模块设计 6 4调试与测试 7 5课程设计总结 10 参考文献 11 附 录 12 万年历系统的设计 1 课程设计目的及要求 1.1设计题目 万年历系统 1.2设计要求 模仿现实中的日历 1.、当前页以系统当前日期的月份为准,显示当前月的每一天(显示出日及对应的星期几); 2、当系统日期变到下一个月时,系统自动翻页到下一月。 1.3其他要求 1、只能使用c/c++语言,源程序要有适当的注释,使程序容易阅读。 2、至少采用文本菜单界面。 3、学生可自动增加新功能模块。 2课题总体设计 2.1系统功能模块图 图1-1 系统功能模块图 2.2系统流程图 图1-2 系统流程图 3.详细设计 3.1 printWNL() 图1-3 printWNL()模块设计图 模块说明:prinWNL()先后调用week(),getdays()打印出简单的日历。 3.2 isRunNian()模块设计 图1-4 isRunNian()函数模块设计图 模块说明: 若该年不是闰年,则输出0,相反则输出1; 设年数为X,先判断X能否被4整除,若不能则输出0; 若能整除,则判断X能否被100整除,若不能则输出1; 若能整除,则判断X能否被400整除,若不能则输出0,若能则输出1。 3.3 getDays模块设计 图1-5 getDays模块设计图 模块说明:判断系统月份,以月份为主,三十一天的有一月,三月,五月,七月,八月,十月,十二月; 三十天的有四月,六月,九月,十一月。若是闰年,则二月为二十九天,不是,则为二十八天。 3.4 主函数main()模块设计 图1-6 主函数体main()模块设计图 模块说明:主函数体主要调用printWNL函数对由getsystime函数读取的主板时间进行相应的编辑和输出,并根据用户指令“↑↓←→”Esc实现年份及月份的调整,并退出程序 4调试与测试 此课程设计要求如生活中的挂历,要以当前页以系统当前日期的月份为准,显示当前月的每一天,并且当系统日期变到下一个月是,系统自动翻页到下一月。然而在调试过程中首先自己没有注意到区分闰年,没有考虑到二月有二十八天,与二十九天的区别,其次没有做到每一天对应的每个星期,再次在调用函数时出错,本代码无法做到在改变系统年份或月份时,不能立即运行,需要重新调试,所以此代码还是有不足之处的。经过不断的修改与尝试,最终将代码完成。 当对上面的程序进行了调试后运行会出现下面所示: 图2-1 满足当前页以系统当前日期的月份为准,显示当前月的每一天。 按“ ”键其下面接着会显示上一月的万年历, 图2-2 按“ ”键其下面会接着显示下一月的万年历 图2-3 按“→”键下面将会接着显示当年上一个月的万年历,按“← ”键将会在下面显示下一个月的万年历上所显示后将会退去该程序。以上运行的结果可知该语言所设计的万年历满足设计要求 5课程设计总结 课程设计时一个很好的提高我们专业编程水平的方法,让我们充分了解我们自己的水平,自主学习一些我们所短缺的知识。主动督促我们去补充我们的知识漏洞。在这期间我对于我所不知道的问题,我总是去查考一些资料,从那些书中我了解到了许多,同时我也知道书是多么的重要。与此同时,在这个课设的过程中,我更了解到团队合作的重要,同学们总是给我一些重要的

文档评论(0)

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

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

1亿VIP精品文档

相关文档