# 广东工业大学数据结构课程设计-基于B树为索引的图书管理系统
具体设计见课程设计报告
**题目 16 图书管理**(难度系数:1.3)
**[问题描述]**
图书管理基本业务活动包括:对一本书的采编入库、清除库存、借阅和归还等等。试设计一个图书管理系统,将上述业务活动借助于计算机系统完成。
**[基本要求]**
(1)每种书的登记内容至少包括书号、书名、著者、现存量和总库存量等五项。
(2)作为演示系统,不必使用文件,全部数据可以都在内存存放。但是由于上述四项基本业务活动都是通过书号(即关键字)进行的,所以要用B树(2-3树)对书号建立索引,以获得高效率。
(3)系统应实现的操作及其功能定义如下:
①采编入库:新购入一种书,经分类和确定书号之后登记到图书账目中去。如果这种书在帐中已有,则只将总库存量增加。
②清除库存:某种书已无保留价值,将它从图书账目中注销。
③借阅:如果一种书的现存量大于零,则借出一本,登记借阅者的图书证号和归还期限。
④归还:注销对借阅者的登记,改变该书的现存量。
⑤显示:以凹入表的形式显示B树。这个操作是为了调试和维护的目的而设置的。下列B树的打印格式如下所示:
![image-20220102110556674](https://gitee.com/Makonike/pic-md/raw/master/image-20220102110556674-1641656650842.png)
**[测试数据]**
入库书号:35, 16, 18, 70, 5, 50, 22, 60, 13, 17, 12 , 45, 25, 42, 15, 90, 30, 7
然后清除:45, 90, 50, 22, 42
其余数据自行设计。由空树开始,每插入删除一个关键字后就显示B树的状态。
**[实现提示]**
(1) 2-3树的查找算法是基础,入库和清除操作都要调用。难点在于删除关键字的算法,因而只要算法对2-3树适用就可以了,暂时不必追求高阶B树也适用的删除算法。
(2) 每种书的记录可以用动(或静)态链式结构。
借阅登记信息可以链接在相应的那种书的记录之后。
**[选做内容]**
(1) 将一次会话过程(即程序一次运行)中的全部人机对话记入一个日志文件“log”中去。
(2) 增加列出某著者全部著作名的操作。思考如何提高这一操作的效率。
(3) 增加列出某种书状态的操作。状态信息除了包括这种书记录的全部信息外还包括最早到期(包括已逾期)的借阅者证号,日期可用整数实现,以求简化。
(4) 增加预约借书功能。
- [推荐使用的B树可视化工具](https://www.cs.usfca.edu/~galles/visualization/BTree.html)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
C语言数据结构课程设计基于B树为索引的图书管理系统源码。 基本要求] (1)每种书的登记内容至少包括书号、书名、著者、现存量和总库存量等五项。 (2)作为演示系统,不必使用文件,全部数据可以都在内存存放。但是由于上述四项基本业务活动都是通过书号(即关键字)进行的,所以要用B树(2-3树)对书号建立索引,以获得高效率。 (3)系统应实现的操作及其功能定义如下: ①采编入库:新购入一种书,经分类和确定书号之后登记到图书账目中去。如果这种书在帐中已有,则只将总库存量增加。 ②清除库存:某种书已无保留价值,将它从图书账目中注销。 ③借阅:如果一种书的现存量大于零,则借出一本,登记借阅者的图书证号和归还期限。 ④归还:注销对借阅者的登记,改变该书的现存量。 ⑤显示:以凹入表的形式显示B树。这个操作是为了调试和维护的目的而设置的。下列B树的打印格式如下所示:
资源推荐
资源详情
资源评论
收起资源包目录
基于B树为索引的图书管理系统.zip (16个子文件)
新建文件夹
data-struct-btree-librarian-master
BTree.c 16KB
main.c 12KB
README.md 3KB
DataStruct_BTree_Librarian.exe 166KB
Librarian - 副本.c 22KB
.vscode
launch.json 2KB
settings.json 3KB
c_cpp_properties.json 534B
tasks.json 2KB
课程设计报告.docx 1.29MB
LICENSE 1KB
Librarian.log 21KB
README.en.md 0B
Librarian.c 22KB
header
Librarian.h 4KB
BTree.h 3KB
共 16 条
- 1
程序员张小妍
- 粉丝: 1w+
- 资源: 3255
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页