> # ♻️ 资源
> **大小:** 462KB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010447**](https://www.yuque.com/sxbn/ks/100010447)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87390792**](https://download.csdn.net/download/s1t16/87390792)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
### 一、实验项目名称
C语言程序设计大作业转换成C++程序设计课程设计
### 二、实验目的
要求学生从C语言程序设计大作业转换成C++程序设计课程设计,1人1题(如C语言程序设计大作业由多人完成必须拆分到每一个人),根据需求描述(或自己撰写需求描述),独自完成需求分析,程序模块设计以及程序的编写、调试和测试。
通过设计性、综合性的C语言程序设计,提高学生编写程序、调试程序的能力,加深C语言知识的理解和把握,初步掌握面向对象和泛型编程的基本思想以及使用类库进行软件构建能力。
### 三、实验要求
1. 采用**面向对象程序设计,**要运用类的封装、继承、多态等机制;
2. 必须体现**多文件结构**的思想,类定义和类实现进行分离。
3. 程序要求做到界面友好,对于用户的输入操作要有明确的**提示信息**,并对输入的数据进行**合法性和正确性**的检查;
4. 做到工程名、类名、变量名、代码格式等合乎**规范**,代码中必须对所设计的类的功能或函数功能进行规范的**注解**。
5. 要求具备**菜单功能**,根据用户的输入,执行相应的操作。在**菜单选项**中,必须包含“关于”一项,该菜单项用来显示课程设计的基本信息,包括程序名称、版本、完成时间、姓名、班级、学号等信息;
### 四、主要仪器设备及耗材
计算机、Visual Studio 2010及以上
### 五、实验步骤
1. **技术路线**(要详细说明所使用的主要技术和实现原理并同时)
2. **需求分析**(项目介绍、功能需求)
3. **系统分析与设计**(阐述项目中需解决的关键技术问题,同时要以类关系图、程序流程图、功能模块示意图等辅助系统设计的描述)
4. **程序设计与实现**(其中内容首先要描述代码工程的文件组织结构,然后以文字的方式阐述代码中每个类的设计意图、主要功能、运用到的关键知识点,主要成员函数的设计意图及功能介绍,对于代码实现中有特色的算法或有创新的地方,可以着重描述(这将视为课程设计的加分点)。如果必须给出实现代码才能更好地说明问题时,也必须先有相关的文字叙述,然后才是代码,代码只是作为例证。)
5. **系统测试**(该部分不能只简单展示几幅程序运行时的截图就完事!要设计几组有代表性的数据来验证程序的各个功能是否达到设计需求。也就是测试是否有不正确或者是遗漏了的功能,在接口上,输入能否正确的接受,能否输出正确的结果;是否有数据结构错误或者外部信息访问错误;性能上是否满足要求;是否有初始化或终止性错误等。建议以表格的形式展示)
6. **个人小结**(课程设计心得体会不少于800字, 该部分必须包含课程设计项目的工作量、开发过程中遇到的困难以及如果克服困难、个人收获、得到的启示或教训等等,切忌空洞无实际内容或千篇一律的敷衍文字)
7. **参考文献**(该部分给出整个程序从选题、需求分析、系统设计到代码实现过程中所参考的书籍、网上资料等)
##### **一、项目技术路线说明**
万年历查询系统所使用的编程语言是C语言。C语言具有面向对象的特点,给编写程序带来了极大地方便。万年历程序设计通过抽象、封装、继承和多态使程序代码达到了很大限度的可重用和可扩展。而程序中的多种多样的类是此次程序设计的核心,利用这些类可以实现数据的封装,隐蔽。通过这些类的派生与继承,能够实现对问题的抽象描述。
在程序设计中,数据的共享与保护显得尤为重要。设置常成员、常对象、常引用和常指针等对数据进行保护,增强程序代码的安全性可靠性。
在程序的组织上,采用多文件结构。将类的声明和定义在不同文件中实现,可以对不同文件进行单独编写、编译,最后再连接。同时利用类的封装性,在调试程序、修改代码时,只对某一个类的定义和实现进行修改,可以提高程序编写效率。
在程序中适当使用多态机制。声明抽象类,为整个类族提供了统一的对外接口。使用指向派生类的指针就可以对派生类的对象进行统一操作。
万年历算法的实现主要依赖于对蔡勒公式的充分理解和恰当使用。蔡勒公式主要是用来计算星期数的算式。以具体日期所在星期为算法实现的突破口,巧妙使用矩阵(即二维数组)这种数据结构,极大得方便了日期的存储和访问,也方便了万年历格式化输出。
##### **二、项目需求分析**
##### 2.1项目介绍
利用C++语言的程序将日常生活中最经常接触到的日历查询编成一个简单的万年历查询系统。该系统具有多项功能,包括当前时间显示,年历查询,月历查询,日历查询功能等。该系统还具有菜单项,方便用户使用相关功能。
##### 2.2功能需求
在万年历查询系统中,日历月历简单明了,方便查询。下面是它可以实现的一些基本功能:
(1)欢迎界面与启动界面,以及显示当前时间
(2)输入年份,判断是否为闰年
(3)输入年份,打印出十二个月的月历
(4)输入年份月份,打印出某个月的月历
(5)输入年份月份日份,打印某天为星期几
(6)对错误输入具有合法性检查,并且输出错误指令提示
##### **三、系统分析与设计**
###### 3.1本程序需解决的关键技术问题
(1)如何判断读入年份是平年还是闰年?
(2)如何获得当前时间?
(3)如何连续显示当前时间?
(4)如何计算指定年月日是星期几?
(5)如何按指定格式3×4打印一年日
(6)如何实现定制控制台界面的名称、颜色、尺寸等信息?
(7)需要设计哪些类?需要设计哪些类的成员?如何处理类之间关系?
(8)如何实现模拟用户界面?
###### 3.2程序流程
程序流程如图3.2所示
![Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.004.png](https://cdn.nlark.com/yuque/0/2024/png/2469055/1711587570146-b96856dd-8951-47cc-9550-d5ad02f707ca.png#averageHue=%23161616&clientId=uecd14e62-aec2-4&from=paste&height=518&id=ua89dc47c&originHeight=647&originWidth=554&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=48363&status=done&style=none&taskId=u7dc328e1-c18e-4259-8dff-2c4ca633c00&title=&width=443.2)
图3.2
###### 3.3 功能模块
万年年历查询系统功能模块可以分解为以下5个主要功能:
1. 启动界面:模拟程序启动以及显示当前时间
2. 主菜单:包含关于、年历查询、月历查询、日历查询等选项
3. 年历查询:查询指定年份的年历
4. 月历查询:查询指定年份月份的月历
5. 日历查询:查询指定年份月份日的日历
###### 3.4类的设�
没有合适的资源?快使用搜索试试~ 我知道了~
基于C++开发的(控制台)万年历系统【100010447】
共38个文件
png:24个
cpp:5个
h:4个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 123 浏览量
2023-01-18
10:26:22
上传
评论 1
收藏 465KB ZIP 举报
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010447 在万年历查询系统中,日历月历简单明了,方便查询。下面是它可以实现的一些基本功能: (1)欢迎界面与启动界面,以及显示当前时间 (2)输入年份,判断是否为闰年 (3)输入年份,打印出十二个月的月历 (4)输入年份月份,打印出某个月的月历 (5)输入年份月份日份,打印某天为星期几 (6)对错误输入具有合法性检查,并且输出错误指令提示
资源推荐
资源详情
资源评论
收起资源包目录
100010447-基于C++开发的(控制台)万年历系统.zip (38个子文件)
wannianli
LICENSE 1KB
img
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.021.png 9KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.015.png 46KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.016.png 50KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.017.png 40KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.010.png 11KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.007.png 7KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.012.png 10KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.005.png 2KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.006.png 79KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.018.png 10KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.003.png 144B
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.001.png 134B
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.014.png 47KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.002.png 144B
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.004.png 47KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.008.png 10KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.020.png 9KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.013.png 11KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.009.png 20KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.024.png 11KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.011.png 10KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.019.png 8KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.023.png 9KB
Aspose.Words.9ce8fdb7-fb13-4a6e-9076-b44386d85fd5.022.png 7KB
Calendar.sln 1KB
Calendar
Calendar.vcxproj 7KB
CTime.cpp 1KB
Calendar.vcxproj.filters 2KB
CCalendar.cpp 8KB
main.cpp 2KB
CTime.h 427B
CConsole.cpp 2KB
CDate.h 909B
CDate.cpp 2KB
CConsole.h 644B
CCalendar.h 2KB
README.md 35KB
共 38 条
- 1
资源评论
- qq_528048722023-06-23非常有用的资源,有一定的参考价值,受益匪浅,值得下载。
神仙别闹
- 粉丝: 2674
- 资源: 7640
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- sony 索尼IMX334摄像头模组电路板AD版硬件PCB图(6层板).zip
- 基于flask和echarts融合交易策略的bitfinex可视化微服务.zip
- 包含了wvp-assist.tar wvp-talk.tar zlmediakit.tar .
- 3r4efgh53wgrf43tw
- 2024新版Java基础从入门到精通全套视频+资料下载
- Spring AI大模型视频教程+ChatGPT视频教程+OpenAI大模型视频教程(资料+视频教程)
- ABB工业机器人教程PDF版本
- 123321123323211
- yolov8实战第八天-pyqt5-yolov8实现车牌识别系统(论文(8700+字+数据集+完整部署代码+代码使用说明)
- 三相桥式全桥整流电路MATALB Simulink仿真文件
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功