- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++集中上机报告.doc
C++ 集中上机报告
学 院: 计算机学院
班 级: xxx
姓 名: xxx
合 作 者:
指导教师: xxx
2010 年 6 月 2 日目 录
一.概述 1
二.总体方案设计 1
三.详细设计 2
四.程序的调试与运行结果说明 3
五.课程设计总结 3
六.后记 3
七.附录 3
参考文献 3
一 概述
课程设计的目的
熟练掌握C++语言的基本知识和C++调试技能;
基本掌握面向对象程序设计的基本思路和方法;
能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
课程设计的要求
要求利用面向对象的方法以及VC++的编程思想来完成系统的设计。试建立一个继承结构,以栈、队列为派生类,建立它们的抽象基类-Bag类,写出各个类的声明及定义,并实现如下功能:
功能:
统一命名各派生类的插入操作为Add,删除操作为Remove。
统一命名各派生类的存取操作为Get和Put。
统一命名各派生类的初始化操作为MakeEmpty,判空操作为Full,计数操作为Length。
要求能将一个栈或队列的内容存入一个文件中,并可从一个文件中读入一个栈或队列。
课程设计的主要设计思想
主要利用面向对象的方法以及VC++的派生、继承的思想。
二 总体方案设计
本次设计以C++的面向对象设计方法为主要思路,由抽象类bag派生出栈类Stack和队列类Queue。2个子类共同的属性和方法在父类中定义,其中方法以纯虚函数方式定义,以实现函数的动态绑定。
在具体实现中,栈使用固定最大长度栈,队列使用固定长度循环队列;文件的读写采用输入输出流的方式。程序总体难度不大,关键问题有抽象类的定义,和栈、队列操作的实现算法。
具备功能有:对栈和队列的插入、删除操作;将整个栈或队列写入文件;把文件中的信息依次读入栈或队列;并提供了对栈或队列进行初始化、判断是否满和元素计数的方法。
程序界面采用标准控制台输入输出方式。文件操作采用输入输出流的方法。
三 详细设计
类结构图:
栈结构示意图:
栈顶标识和栈中元素的关系图
循环队列结构示意图:
循环队列头尾标识和元素的关系图:
程序运行流程图
四 程序的调试与运行结果说明
功能联合演示:(控制台输出记录)
字符串 栈/队列 演示程序
请输入
11 - 入栈 21 - 入队列
12 - 出栈 22 - 出队列
13 - 将栈中内容写入文件 23 - 将队列内容写入文件
14 - 从文件中加载内容入栈 24 - 从文件中加载内容入队列
5 - 显示目前状态 6 - 退出
操作 - 11
输入入栈的字符串:first
操作 - 11
输入入栈的字符串:second
操作 - 11
输入入栈的字符串:third
操作 - 13
输出到文件的文件名:stack.txt
操作 - 12
third
操作 - 11
输入入栈的字符串:another
操作 - 12
another
操作 - 24
输入到队列的文件名:stack.txt
已导入
操作 - 21
输入入队列的字符串:another
操作 - 22
first
操作 - 24
输入到队列的文件名:stack.txt
已导入
操作 - 24
输入到队列的文件名:stack.txt
已导入
操作 - 24
队列已经满了
操作 - 5
当前状态
栈最大长度: 10 队列最大长度: 9
测试栈目前长度: 2 , 未满
测试队列目前长度:9 , 已满
操作 - 23
输出到文件的文件名:queue.txt
操作 - 14
输入到栈的文件名:queue.txt
由于栈已满未能完全导入
操作 - 5
当前状态
栈最大长度: 10 队列最大长度: 9
测试栈目前长度: 10 , 已满
测试队列目前长度:9 , 已满
操作 - 12
second
操作 - 6
Press any key to continue
stack.txt 内容:
first second third
queue.txt 内容:
second third another first second third first second third
五 课程设计总结
本程序已经达到了全部的设计要求,几经修改,已经比较完善。但是用户界面还不是很友好。如果需要改进,应该采用图形界面以使得程序更为直观。
本次集中上
您可能关注的文档
- A孙英福-金燕飞-谢文龙.doc
- A工作表中固定位置的单元格.doc
- A必修.金融理财竞争力标准.doc
- a放行人员考试试题.doc
- A机芯扫描.doc
- A现场调试作业指导书标准文件.doc
- A电源原理.doc
- A知识点集锦.doc
- A答案南昌大学计算机网络试卷.doc
- A系列电子英语.doc
- 2023咸阳职业技术学院招聘笔试真题参考答案详解.docx
- 2023四川化工职业技术学院招聘笔试真题及参考答案详解.docx
- 2023哈尔滨职业技术学院招聘笔试真题及参考答案详解.docx
- 2023商洛职业技术学院招聘笔试真题及答案详解1套.docx
- 2023呼伦贝尔职业技术学院招聘笔试真题参考答案详解.docx
- 2023南阳农业职业学院招聘笔试真题参考答案详解.docx
- 2023天津公安警官职业学院招聘笔试真题带答案详解.docx
- 2023年上海电机学院招聘笔试真题参考答案详解.docx
- 2023年四川艺术职业学院招聘笔试真题参考答案详解.docx
- 2023安徽体育运动职业技术学院招聘笔试真题及答案详解一套.docx
文档评论(0)