首页 > 编程语言 >C/C++简易图书管理模拟系统(二叉平衡树)

C/C++简易图书管理模拟系统(二叉平衡树)

时间:2022-12-13 10:11:30浏览次数:94  
标签:ISBN C++ 二叉 模拟系统 借阅 978 平衡 图书

C/C++简易图书管理模拟系统(二叉平衡树)

C/C++简易图书管理模拟系统(二叉平衡树)

数 据 结 构 课程实验教案
第 8 页
实验题目八:
综合实验
简易图书管理模拟系统 机时安排 9小时
实验时间 第14-16周
实验目的:
 插入、查找和删除等数据操作在实际应用中非常普遍,通过设计和实现一个简易的图书管理系统,进一步提高学生对插入、查找和删除等操作的理解和应用能力。帮助学生理解和掌握线性表和二叉平衡树等数据结构的基本操作和实现方法,加强学生综合应用数据结构知识解决实际问题的水平和能力。
实验内容:
1、问题描述:一个简易图书管理的基本业务活动包括:对新购入一种书的采编入库、图书的借阅和归还等。
2、基本要求:
(1)每种书的登记内容至少包括书号、书名、著者、现存量和总库存量等五项。
(2)我们要求各种书的数据用二叉平衡树(关键字为书号)来存储(如果用更简单的二叉排序树来代替二叉平衡树,则扣除15分);借阅登记信息采用下图所示的“顺序表—链表”来存储,其中顺序表存储借阅者信息,链表存储借阅者所借的各种书籍信息(至少包含书号),借阅登记信息的存储结构如下示意:

(3)本次实验的重要数据结构(如二叉平衡树、顺序表—链表等)都应能以文件的形式存储和读取,以便随时进行图书管理。如果不能实现对相关数据结构的文件存储和访问,则扣除10分。
(4)需要实现的三种主要功能定义如下:
①采编入库:新购入一种书的时候,将该书的书号和购入数量登记到图书帐目中去。如果这种书在帐中已有,则只将该书的总库存量增加。
②借阅:如果一种书的现存量大于零,则借出一本,登记借阅者的图书证号和归还期限。
③归还:注销对借阅者的登记,改变该书的现存量(如果借阅者归还所有的书,则注销该借阅者的信息)。
3、测试数据:
入库书号:ISBN 7-302-02368-9,ISBN 978-7-115-16985-3/TP,ISBN 978-7-302-03314-1,ISBN7-115-10563-4/TP·3043,ISBN 978-7-121-07479-0,ISBN 978-7-115-18809-0/TP,ISBN 978-7-04-024246-1,ISBN 7-111-12886-9,ISBN 978-7-115-19601-9/TP,ISBN 7-900183-01-9。
借书证号为081716的借阅者,先借阅10种图书各一本,后归还图书ISBN 7-302-02368-9和ISBN 978-7-121-07479-0。
借书证号为081710的借阅者,先借阅图书ISBN 978-7-121-07479-0和ISBN 978-7-302-03314-110各一本,后归还图书ISBN 978-7-121-07479-0。
其余数据可自行设计。
4、实现提示:
(1)各种图书按登记的先后顺序入库(利用二叉平衡树实现动态查找表的插入),书号为图书的关键字。初始时,二叉平衡树为空树。采编入库
(2)借阅者借阅图书时,先检查借阅者有无超期未归还图书,如有,则不能借阅,如无,利用二叉平衡树实现动态查找表的查找,登记借阅信息。注意,按规定,同一种书不能重复借阅。登记借阅信息
(3)清除库存(选作)时,将该图书从二叉平衡树中删除。
5、选作内容:
(1)实现图书管理的清除库存操作:某种书已无保留价值,将它从图书帐目中注销。即,要实现二叉平衡树的删除操作。
(2)实现图书管理的显示操作:每次插入或删除二叉平衡树的一个结点之后,更新二叉平衡树的显示。二叉平衡树的显示可采用《数据结构题集》6.69题要求的凹入表形式,也可以采用图形界面画出树形。
(3)图书管理模拟系统的其它功能实现。

源码传送门

传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111

参考资料(含参考书、文献等):
《数据结构题集》(C语言版)严蔚敏 吴伟民 清华大学出版社 1999.2
教学过程设计:复习 分钟,授新课    分钟,安排讨论 分钟,布置作业 分钟,其他 分钟
授课类型(请打√):理论课□ 讨论课□ 实验课□ 练习课□ 其他□
教学方式(请打√):讲授□ 讨论□ 示教□ 指导□ 其他□
教学资源(请打√):多媒体□ 模型□ 实物□ 挂图□ 音像□ 其他□
填表说明:1、每项页面大小可自行添减;2、教学内容与讨论、思考题、作业部分可合二为一。

标签:ISBN,C++,二叉,模拟系统,借阅,978,平衡,图书
From: https://www.cnblogs.com/codewriter/p/16977808.html

相关文章

  • C++ Banking System[2022-12-13]
    C++BankingSystem[2022-12-13]DescriptionCustomeraccountInabank,therearemanytypesofaccounts.Tomakeitsimpleforthiscourseproject,weonlyco......
  • C++/MFC学生成绩管理系统
    C++/MFC学生成绩管理系统计算机软件课程设计任务书一、设计题目、任务及要求题目:学生成绩管理系统主要功能是实现学生的信息管理,学生信息包括:学号,姓名,年龄,性别,出生年月......
  • C++编程题[2022-12-13]
    C++编程题[2022-12-13]题1:采用面向对象的程序设计方法编写一个一卡通管理系统,要求使用多继承、虚函数、虚基类,要有设定类别、计算消费额等功能。题2:定义一个处理时间......
  • C/C++高校教室管理系统
    C/C++高校教室管理系统4、高校教室管理系统问题描述:设计并实现一个教室管理系统,教室需设置不同的类型,系统可以实现对教室信息的添加,修改,删除,查找等功能,教室信息需要以......
  • C/C++代理商管理系统
    C/C++代理商管理系统6.19代理商管理系统[问题详述]某企业的若干种产品通过代理商销往全国各地。要求编写代理商管理系统,实现对代理商和所经销产品的管理,系统提供一定......
  • C++ Primer (5th) 3.21
    #include<iostream>#include<vector>usingnamespacestd;usingstd::vector;intmain(intargc,charconst*argv[]){vector<int>v1;vector<int>v2(......
  • C/C++居民小区水电费管理系统
    C/C++居民小区水电费管理系统6.3居民小区水电费管理系统[问题详述]居民小区水电费管理系统可以对居民小区的用水、用电情况及应交费用进行查询与管理。物业管理公司负......
  • C/C++交通处罚单处理系统
    C/C++交通处罚单处理系统6.14交通处罚单处理系统[问题详述]随着城市私家车辆的快速递增,交通违章的现象也同步增加。交通警在执勤时遇到交通违章违法时会开具交通处罚......
  • C/C++小商品信息管理系统设计与实现
    C/C++小商品信息管理系统设计与实现设计一个小商品信息管理系统。根据以下功能,分析使用的逻辑结构和存储结构。(1)增加功能:能录入新数据(包括:商品名称、商品编号、厂家、库......
  • C/C++实验仪器管理系统
    C/C++实验仪器管理系统6.21实验仪器管理系统[问题详述]实验室的仪器由专人维护管理以保证实验时能够正常使用。仪器的管理实行使用登记制度,仪器使用(借出)达到一定次数......