数据结构顺序表-实验报告.doc
文本预览下载声明
数据结构实验一:顺序表及其相关操作
PAGE
PAGE 2
重庆交通大学计算机与信息学院
数据结构实验报告
实验名称: 顺序表操作
实验性质: 课程安排实验
所属课程: 数 据 结 构
指导教师:
班 级: 2008级3班
学 号:
姓 名:
完成时间: 2010年 4 月 7 日
目 录
封 面 …………………………………………….1
目 录 …………………………………………….2
一、实验目的 ………………………….………………….3
二、实验内容及要求 ………………………….……………… …3
(1)实验内容
(2)实现功能
(3)上交内容
三、实验设备及软件 …………………………………………… 4
四、设计方案 ……………………………..………….…..5
(一) 题目:顺序表及其相关操作
(二) 设计的主要思路 ……………………..5
(三) 主要功能 ……………….…….5
(四) 程序大致流程图 ……………………..6
五、主要代码(略) …………………………………………….7
六、测试结果及说明 ……………………………..……………..7
七、实验体会 …………………………..……………….10
教师评阅意见:
教师评阅意见:
签名: 年 月 日
实验成绩:
一、实验目的
培养学生在程序设计方面知识的综合应用能力及程序设计能力(包括编制能力及程序调试能力)
二、实验内容及要求
(1)以顺序存储方式实现线性表进行简单的图书管理,图书信息由学生自行定义。
(2)主要实现以下功能:
增加图书、删除图书、修改图书信息、查询与定位(查询方式由学生自行设计)、显示与浏览、图书信息文件的打开与保存等
(3)上交内容:
1、实验报告:要求内容充实、结构完整、格式规范、说明详细等
2、源代码与数据文件:将所有的源代码与测试用数据文件一并压缩后提交
注:实验报告、源代码中均需要注明自己的学号、姓名、年级、专业、班级等信息
三、实验设备及软件
计算机、Visual C++6.0
四、设计方案
(一) 题目:顺序表及其相关操作
(二) 设计的主要思路
1、建立能保存图书信息的数据类型,定义类book
由于本次实验要求,图书信息自己定义,所以本次选用双精度型作为编号,字符串类型的名称和作者以及整型的页数;
根据原来定义类的经验,本次程序同样定义了比较完善的共有成员函数,其中包括设置私有成员的值(含有函数重载,包括有参函数和无参函数)、私有成员数据的获取、book数据类型赋值符号的重载、输入、输出,以及文件操作的读入数据函数。
为了方便book类型成为list类型的成员,调用book的成员函数,特将list类命名为book类的友元类。
2、定义顺序表,顺序表中数据data的类型用以定义的book
顺序表是本次实验的重点,根据书上参考定义了受保护成员book类型的对象指针、顺序表的最后表项last,以及顺序表的最大容量maxsize;
在顺序表中,动态分布数据域的存储空间,因此在类中定义了缺省的构造函数以及list类的析构函数;
list类的共有成员函数类似book类的定义风格,包括了受保护成员值的设定以及读取,同样重载了list类型数据的赋值即顺序表的拷贝;
保留了教材上对于顺序表的判空、判满等共有成员函数;
对顺序表的搜索进行了修改,可以由用户选择搜索的方式,然后对查找到的数据进行输出;
List类大多的函数,特别是涉及book类型的数据操作时,都是再调用book类的共有成员函数。
自主加入了文件的读入函数,由list类入口,再调用book类的读入函数。
3、设计主函数,显示操作方式,调用各个类的成员函数
显示本程序能实现的各项功能,并实现循环操作;
通过定义的一个list类型对象调用各个函数实现程序功能;
为实现不同的编程方式,用了很久以前的直接定义函数功能,在主程序中定义了一个函数,不属于book类,也不属于list类,它实现保存数据的功能。
(三) 主要功能
1、从已保存的文件中读入图书信息
包含文件操作中的数据读入和判别文件是否存在;
循环读入数据直到数据全部读出,同时设置li
显示全部