电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

北京理工大学数据结构实验报告实验四图书管理系统

北京理工大学数据结构实验报告实验四图书管理系统_第1页
1/24
北京理工大学数据结构实验报告实验四图书管理系统_第2页
2/24
北京理工大学数据结构实验报告实验四图书管理系统_第3页
3/24
实验四 图书管理系统 姓名:任子龙 学号:1120140167 班级:05111451 一.需求分析 (1)问题描述 有一个小型书库保管了大量图书,关于图书有大量信息需要处理,这些信息包括图书的分类、书名、作者名、购买日期、价格等。现要求编写一个程序以便于对图书的管理。 (2)基本要求: a.建立图书信息。 b.提供查找功能,按照多种关键字查找需要的书籍。例如按书名查找,输入书名后,将显示出该图书的所有信息,或显示指定信息。 c.提供排序功能,按照多种关键字对所有的书籍进行排序,例如按出版日期进行排序。 d.提供维护功能,可以对图书信息进行添加、修改、删除等功能。 (3)数据结构与算法分析 将每一本书看作是一个基本单元。由于涉及添加、修改操作,这里使用了链表作为数据存储结构;同时,考虑到排序功能,尝试使用双向链表。其中,每本书作为一个结点,数据域包含 char型变量,指针域含有左右指针 left 和 right。 二.概要设计 1.抽象数据类型的定义 为实现上述功能,程序中使用了双向链表,只需要定义一种数据类型: typedef struct book { char number[10]; char title[20]; char author[10]; char date[15]; char price[10]; struct book *right; struct book *left; }BK; 注意结点的指针域有left 和right 两个。 2.本程序包含两个模块 (1)主程序模块 主函数只包含了 Menu_select()函数。目的是进入主菜单界面,进行功能选择;直到输入操作码0,退出系统; (2)双向链表单元模块——实现书籍信息的链式存储的抽象数据类型。 各函数之间的调用关系: 三. 详细设计 1.结点类型 typedef struct book { char number[10]; char title[20]; char author[10]; char date[15]; char price[10]; struct book *right; struct book *left; }BK; 2.子函数 (1)功能菜单调用函数 Menu_select() 使用户进入主菜单界面,进行功能选择;先进入无限循环,输入操作码进行系统管理工作,直到输入操作码0,退出系统; (2)各种功能函数 Initialize()//初始化图书系统信息; Insert()//添加新的图书信息; Sort()//对图书进行排序,本程序可以实现按“图书编号”、“出版日期”、 “图书价格”多种关键字进行排序; Search()//实现对图书的查找功能,本程序可以实现按“图书编号”、“出版日期”、“图书价格”多种关键字进行查找; deletebook()//删除无效...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

北京理工大学数据结构实验报告实验四图书管理系统

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部