- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++课程设计报告
( 2010 -- 2011 年度第 二 学期)
日历管理器的开发系统的设计
专业 学生姓名 班级 学号 指导教师 完成日期 2011年7 月 3 日 目 录
目 录 2
1 概 述 1
1.1 课程设计目的 1
1.2 课程设计内容 1
2 系统需求分析 1
2.1 系统目标 1
2.2 主体功能 1
2.3 开发环境 1
3 系统概要设计 2
3.1 系统的功能模块划分 2
3.2系统流程图 4
4系统详细设计 5
4.1系统主页面设置 5
4.2更改模块设计 5
4.3判断模块设计 5
试结5 测试 7
5.1 测试方案 7
5.2 测果 7
6 小结 14
参考文献 15
附 录 16
附录1 源程序清单 16
日历管理器系统的设计
1 概 述
1.1 课程设计目的
1、巩固并加深学生对C++语言程序设计知识的理解;
2、培养我面向对象的程序设计思想,使我们认识面向过程和面向对象两种设计方法的区别;
3、进一步掌握和应用VC++ 6.0集成开发环境;
4、提高运用C++语言解决实际问题的能力;
5、初步掌握开发小型实用软件的基本方法,能独立设计、实现具有实际功能的小系统;
6、掌握书写程序设计开发文档的能力。
1.2 课程设计内容
仿现实生活中的挂历,显示日历。当前页以系统当前日期的月份为准,显示当前月的每一天(显示出日及对应的星期几);当系统日期变到下一月时,系统自动翻页到下一月。
根据用户输入的年份,自动产生每个月的日期列表。自定义显示日历的形式。
2 系统需求分析
2.1 系统目标
建立电子日历,显示当前月的每一天,当日期变更时,可以自主生成新的日历表!
2.2 主体功能
1)当前页以系统当前日期的月份为准,显示当前月的每一天(显示出日及对应的星期几),当系统日期变到下一月时,系统自动翻页到下一月。
2)可以实现日期的加法运算,即在日期相加的菜单选项中增加日期加天数,结果为新日期。
3)根据用户输入的年份,自动产生每个月的日期列表。包括输入非法数据(如负数、日期超过31天等情况)的识别显示功能。
2.3 开发环境
VC++6.0
3 系统概要设计
3.1 系统的功能模块划分
日历系统设计的主要模块分为:查询年份月份模块、查询平年闰年模块、判断星期几模块、计算总天数模块、计算月份第一天为星期几模块等模块。
图3-1系统模块划分
图3-2判断是否为平年闰年模块
图3-2系统流程
3.2系统流程图
4系统详细设计
4.1系统主页面设置
设计思路:
首先判断某一年是否为闰年,若是,则二月输出为二十九天,如果不是,二月输出为二十八天。再判断系统当前月份是一个大月还是小月,如果是大月,则输出三十一天;如果是小月,则输出三十天。
通过定义一个结构体,用对对象指针的访问来实现从系统自动获取时间为程序所用。再利用一个函数计算出每月的第一天是星期几。根据判断的大月和小月,通过控制符控制输出流格式(设置字段)宽度,把该日期以前的位置用空格补上,并从改日起依次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以七得零换行,即可完整的输出该月的日历。
C++中一般会使用cout和cin时的默认格式。但有时人们在输入输出时有一些特殊的要求,如在输出实数时,要规定字段宽度,只需要保留两位小数,数据向左或向右对齐等。C++提供了在输入输出流中使用的控制符。
需要注意的是:如果使用了控制符,在程序单位的开头,除了要加iostream头文件外,还要另外加iomanip头文件。
4.2显示模块设计
显示日历输出格式和界面。
Year 显示年份
Month 显示月份;
Day 显示日期.3更改模块设计
判断年份,当年份小于你输入值时,则报错。判断年份,当年份小于或大于你输入值时,则报错。首先判断输入的年份是否为闰年,在根据输入的月份判断输入的日期是否正确加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为355。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为355。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输
您可能关注的文档
最近下载
- 24点题目(200题)与答案种数.docx VIP
- 本特勒电动汽车平台电池包技术--本特勒BENTELER.pdf VIP
- 中国金融移动支付 远程支付应用 第4部分:文件数据格式规范.pdf VIP
- 2022年小学数学新课标解读.pdf VIP
- 河北省围场满族蒙古族自治县2025年上半年事业单位公开招聘教师岗试题含答案分析.docx VIP
- 电子工业洁净厂房设计规范完整版2024.pdf VIP
- 2024年艺术文化生活娱乐知识竞赛-趣味知识竞赛考试历年真题荟萃带答案.docx VIP
- 石油科技成果间接经济效益计算方法.ppt VIP
- 生菜全程机械化技术规范.pdf
- 行为习惯养成教育主题班会PPT课件.pptx VIP
文档评论(0)