- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于C语言的图书借阅管理系统的设计与实现
摘 要
图书管理系统的设计主要运用了二叉树的相关知识,一方面采用二叉树排序作为索引表的主要原因是为了方便用书序列号为关键字进行查阅,根据日常我们的借书经验来看,到图书馆借书的人或者到书店买书的人,都可以通过多种查询方式来获取所需要的书的信息,通过数的序列号能进行更加精确的查找,对于一个实用的管理系统来说缺省查找是必不可少的;采用二分查找实现精确查找;书籍入库操作应由系统管理员进行,若此书已有收藏则只增加库存量即可,而否则要按系统设计要求添加相应的节点数据;书籍销毁的操作同样应由系统管理员进行,只能销毁已存在的、且未出借的书,只需在索引表中将该节点删除即可完成书籍的销毁工作;本系统中采用字符串的模式匹配算法来实现信息的缺省检索结点的设计采用标准c语言提供的一种叫做结构体的复合数据类型存储书的信息,然后再采用二杈树的二杈链表存储结构把单本的书关联起来。这样就可对馆藏的所有书进行统一的管理了。
关键字:图书借阅,图书管理,二叉树
目 录
1 前言 6
1.1课程设计的目的 6
1.2 图书借阅管理系统的设计与实现的基本要求 6
1.3数据结构相关知识的阐述 6
2 功能描述 7
3 系统设计 7
3.1 设计思路 7
3.2 系统功能模块图 8
3.2.1系统构成 8
3.2.2管理员 8
3.3 管理员功能模块 9
4 算法设计 11
4.1 节点数据的设计 11
4.1.1 图书的存储结构模型 11
4.1.1 管理员存储模型 11
4.2 公共参变量说明 12
4.2.1 administer *admins,*current_admin=NULL 12
4.2.2 libcard *clients,*current_client=NULL; 12
4.3 二叉排序树的插入模块的设计 12
4.4二叉排序树的创建模块的设计 13
4.5二叉排序树的查找模块设计 14
4.6二叉排序树的删除模块设计 15
4.7 主函数的设计 17
5 详细设计 18
5.1 采用排序二叉树作为存储结构 18
5.2创建链表的二叉树 18
5.3 二叉排序树的插入模块,采用递归算法实现 19
5.4 本模块实现二叉排序树的建立 20
5.5 二叉排序树的查找算法 21
5.6 二叉排序树的删除算法 22
5.7 显示管理员信息 23
6 调试分析 30
6.1 进入系统 30
6.2成进入系统之后你就可以进行相关操作了 31
7 课程设计总结 35
8 参考文献 35
1 前言
1.1课程设计的目的
通过数据结构课程设计能更加熟练的掌握C语言以及数据结构的相关知识,能宏观的把握数据结构的各个相关部分的知识,深入的理解各个分支结构的作用和运用,特别是通过本此课程设计更能熟练的掌握和运用二叉树的相关知识,如通过二叉树能实现查找、删除、排序等从而实现对图书借阅管理。因而课程设计的主要目的就是使同学们能熟练的运用数据结构的相关知识实现各种功能。
1.2 图书借阅管理系统的设计与实现的基本要求
对每种书登记内容包括书号、书名、作者、现存量和库存量;对所有藏书以书号为关键字建立索引表——排序二杈树,用以方便进行二分查找;
采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;
借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;
归还:注销对借阅者的登记,改变该书的现存量。
系统主要功能如下:
输出形式:书名、著作者? ? ?
1.3数据结构相关知识的阐述
本课程设计运用到得数据结构部分主要在于二叉树的运用,采用二杈树的二杈链表存储结构把单本的书关联起来,这样就可对馆藏的所有书进行统一的管理;采用排序二叉树作为索引表的优点是方便按索书号为关键字进行查询;对于一个实用的管理系统来说缺省查找是必不可少的,本系统中采用字符串的模式匹配算法来实现信息的缺省检索。采用二分查找实现精确查找;运用二叉树的插入、删除、排序来实现对图书的添加、删除、排列。
2 功能描述
二叉树的排序主要用于对图书管理系统的图书进行排序,采用二杈树的二杈链表存储结构把单本的书关联起来。这样就可对馆藏的所有书进行统一的管理了。
二叉树的插入用于实现对图书管理系统的图书进行添加,对二叉树的节点插入新节点,然后从新排列新序列来实现图书的插入。
二叉树的删除主要用来对图书管理系统的图书进行销毁,对二叉树节点的删除,节点表示一本图书,删除节点就表示销毁不需要的图书信息。
3 系统设计
3.1 设计思路
由于课程设计的要求是用纯的c语言实现,不能采用数据库等操作数据,故节点的设计采用标准c语言提供的一种叫做结构体的复合数据类型存储书的信息,然后再采用二杈树的二杈链表存储结构把单本的书关联起来。这样就可
您可能关注的文档
- 公司财务风险的影响因素分析及其预防.docx
- 关于双梁桥式起重机的研究.doc
- 关于汽车尾灯的设计.doc
- 农民增收长效机制建设中的问题与对策.doc
- 凉水井1.8Mta新井设计.doc
- 北大第一医院火灾报警系统设计.doc
- 区供电局人力资源管理工作浅析.doc
- 华晋焦煤有限责任公司沙曲煤矿300万吨矿井初步设计.doc
- 协庄煤矿矿井-850水平采区设计.doc
- 单片机的红外遥控系统.docx
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)