- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++面向对象
课
程
设
计
报
告
目录
一、 课程设计目的及要求 -2-
1. 设计目的 -2-
2. 设计具体内容及要求 -2-
(一、)基础设计题目 -2-
(1)封装一个字符串类……………………………………- 2 -
(2)用类实现线性链表的常见操作 -2-
(二、)宾馆客房管理系统 ………………………………- 3 -
二、 课程设计具体实现 - 3 -
1. 封装字符串类 - 3 -
(1) 字符串类总体设计图 - 3 -
(2) 字符串类详细设计…………………………………- 3 -
调试及问题解决……………………………………- 5 -
2. 封装链表类 - 5-
(1) 链表类总体设计 - 5 -
(2) 链表类详细设计 -5-
(3) 调试及问题解决 - 7 -
3. 宾馆客房管理系统 - 7 -
(1)宾馆客房管理系统总体设计 - 7 -
(2)宾馆客房管理系统详细设计 -10 -
(3)调试及问题解决 - 20 -
三、 结束语 - 20-
课程设计目的及要求
设计目的
软件工程专业所开设的C++课程设计是教学实践环节中的一项重要内容,进行此课程设计的旨在:
1、提高和加强学生的计算机应用与软件开发能力,使学生由初学者向专业的程序员过渡。
2、培养学生独立分析问题、解决问题、查阅资料以及自学能力,以适应计算机产业日新月异发展的形势。
3、学习和掌握C++程序设计方法以及上机调试技巧,为以后学习其它专业课程打好基础。
本次课程设计是以学生独立思考解决问题为主,教师指导为辅,结合上机操作,完成指定的任务,做出设计报告。
设计具体内容及要求
基础设计题目
A. 封装一个,完善字符串,字符串的基本操作
要求如下:
定义一个串类CMyString,建立适当的构造函数
字符串使用指针保存字符串
必须实现如下操作,字符串比较、求串的长度、判断串是否为空、将串置空、字符串赋值(包括两个字符串类复制,一个字符串赋值到CmyString对象)、求字符串中的一个字符或改变字符串中的一个字符(采用重载[]),完成串的赋值与合并(重载+),得到表示字符串的指针地址
B. 利用C++中的类实现线性链表的常见操作
带表头结点(存放的是该线性链表的长度),结点存放的是整型数值;
实现以下操作 :
置空MakeEmpty()
求长度Length()
插入Insert(int x,int i): 将x插入到第i个结点(不含头结点)的之后;
删除Delete(int x):删除链表中值为x的结点,成功返回1,否则返回0;
删除 ReMove(int i):删除链表中第i个结点,成功返回1,否则返回0;
有哪些信誉好的足球投注网站 Find(int x):在链表中查找数值为x的结点,成功返回1,否则返回0;
显示 Display():显示整个链表各结点的数值。
写出类的构造函数、复制构造函数及析构函数
编写一个函数,使用户通过选择进行相关链表操作。
(二) 宾馆客房管理系统
宾馆的客房信息包括号、、。试设计一管理系统统,系统以菜单方式工作使之能提供以下功能:
录入功能信息浏览功能?
客房信息查询查询信息删除、修改功能{length=strlen(a);
contents=new char[length+1];
strcpy(contents,a);
cout构造函数被执行!endl;}
字符串类的拷贝构造函数
CMystring::CMystring(CMystring b)
{ length=b.length;
contents=new char[strlen(b.contents)+1];
strcpy(contents,b.contents);
cout拷贝构造函数被执行!endl;}
运算符的重载
char CMystring::operator[](int n)//重载[],用于求字符串中的一个字符{ static char ch=0;
if(nlength-1)
{cout整数下标越界;
return ch;}
else return *(contents+n);
}
CMystring operator +(CMystring e,CMystring f)//重载+,字符串的赋值与合并
{
CMystring t;
t.length=e.length+f.length+1;
t.contents=new char[t.length+1];
strcpy(t.contents,e.contents);
strcat(t.contents,f.contents);
return t;
}
CMystring CMystring
文档评论(0)