北 京 林 业 大 学
13学年—14学年第1学期数据结构C 实验报告书
专业: 电子信息科学与技术 班级: 电子131
姓名: 潘林 学号: 131114119
实验地点: 北林学研N09 任课教师: 孟伟
实验题目: 基于线性表的图书信息管理
实验环境: Visual C++
实验目的:
1、掌握线性表的定义;
2、掌握线性表的基本操作,如建立、查找、插入和删除等。
(一)实现方法
1. 所用数据结构的定义及其相关说明(相关结构体或类的定义及其含义)
//定义图书表
typedef struct
{
int no; //书号
char name[20]; //书名
int price; //书价
}Book;
//单链表的建立
typedef struct LNode
{
Book data; //数据域
struct LNode *next; //指针域
}LNode,*LinkList;
2.自定义函数的名称及其功能说明
void creatlist_L(LinkList &L, int n); //根据指定图书个数,逐个输入图书信息
int Getlem_L(LinkList L,int i, int &e); //根据指定的位置可返回相应的图书信息(书号,书名,定价)
void LocateElem_L(LinkList L, string name); //根据书名进行查找,返回此书的书号和定价
void ListInsert_L(LinkList &L,int i,char &k); // 插入到表中指定的位置
void ListDelete_L(LinkList &L,int d); // 删除指定位置的图书记录
void Number(LinkList L); //计数
void Limbo(LinkList L,int option) ; //选择功能
void Function(LinkList L); //友好的提示
3.主要功能算法的时间复杂度
4. 实验任务书中要求画的流程图
(1)链表插入的流程图
(二)实验结果
粘贴程序的实际运行测试结果并加以文字说明
(1) 根据指定图书个数,逐个输入图书信息;
(2) 根据书名进行查找,返回此书的书号和定价;
(3) 根据指定的位置可返回相应的图书信息(书号,书名,定价);
(4) 给定一个图书信息,插入到表中指定的位置
(5) 删除指定位置的图书记录;
(6) 统计表中图书个数。
(三)结论分析
1. 问题与解决方法
1)在实现链表int Getlem_L(LinkList L)时,思路有误区,首先该函数实现“按序号查找”功能,我没有搞清应该命令书号(书的位置)还是命令书的名字来执行该函数,后来我选择通过命令其输入书的位置来查找书。
2)最普遍的问题是虽然学会了算法,但是我的语法基础不扎实经常出现错误,之后通过与同学、老师交流慢慢了解C++的语句用法。
3)在实现void LinstDelete_L函数时,由于未意识到删除结点前应该储存结点,导致算法出错。最后查找书时,发现结点需先用一个已定义的结点来储存该结点地址,再使上一个结点指针指向该结点指针域。
2. 收获和体会
本次实验收获非常大!由于大一厌恶编程,尚未适应电子学科,我的C语言和C++基础差。调节心态后,认真听讲了数据结构C,学习很多算法,发现其算法的逻辑可以应用在生活各个方面,用处很大!最重要的是操控电脑编程成就感很大!以上是我的感性认识。
通过该实验我学会了线性表链的操作,更加深刻认识线性表的用法,同时也对数据的存储结构有了更深刻的认识。
3. 尚存在的问题
格式不是很美观。
实 验 报 告
实验名称 2 数字脉冲分配器和步进电机调速控制及数字 PWM 发生器和直流电机调速控制
实验名称:粉体真密度的测定粉体真密度是粉体质量与其真体积之比值,其真体积不包括存在于粉体颗粒内部的封闭空洞。所以,测定粉体的真密度…
研究生实验报告范本实验课程实验名称实验地点学生姓名学号指导教师范本实验时间年月日一实验目的熟悉电阻型气体传感器结构及工作原理进行基…
实验报告课程名称物证技术学实验项目名称捺印手印样本指纹显现提取班级与班级代码074213070853实验室名称或课室法学实验教学中…
滁州市政府组织退耕还林(黑体,小二,1.5倍行距,段前段后0.5行)——5060451007范雪花(学号,TimesNewRoma…
科学实验报告单1科学实验报告单2科学实验报告单3科学实验报告单4九完小科学实验报告单10九完小科学实验报告单11九完小科学实验报告…
实验名称:粉体真密度的测定粉体真密度是粉体质量与其真体积之比值,其真体积不包括存在于粉体颗粒内部的封闭空洞。所以,测定粉体的真密度…
综合实验报告20xx20xx年度第一学期名称汇编语言程序设计综合实验题目院系班级学号学生姓名指导教师设计周数成绩日期20xx年1月…
体育测量与评价实验报告模板课程名称体育测量与评价实验名称ISAK全套人体测量指标共39项测试一预习报告1实验目的通过实验强化体格及…
武汉大学珞珈学院计算机科学系实验报告实验课程专业年级学号姓名指导教师201201学年第学期实验报告说明1实验项目名称要用最简练的语…
五实验报告学号姓名班级实验时间年月日实验报告图像生成与图像处理一填写下载图像的相关数据二查看左侧的图像请填写相应的图像编码三计算机…