(完整word版)大数据结构课程设计图书管理系统

合集下载

大数据结构课程设计图书管理系统

大数据结构课程设计图书管理系统

数据结构课程设计图书管理系统一需求分析该程序是模拟图书馆管理系统,实现图书采编入库、借书、还书、查询等基本业务。

此程序规定:(1) 管理员能够向系统中输入每种书的基本信息,包括书号、书名、作者、现存量和库存量、借阅记录,并保存记录;(2)用户(读者)能够按书号、书名、作者查询图书信息;(3)管理员能够实现图书采编入库(新购入一本书,经分类和确定书号之后登记到图书账目中去。

如果这种书在帐中已有,则只将总库存量增加)、借阅(如果书的现存量大于0,则借出一本,登记借阅者的图书证号和归还期限)、归还(删除对借阅者的登记,改变该书的现存量)、销毁(将图书从账目中删除)等操作.二概要设计系统用到的抽象数据类型定义:1、ADT LinearList{数据元素:D={a i|a i∈D0,i=1,2,…,n,n≥0,D0为某一数据对象}关系:S={<a i,a i+1>|a i,a i+1∈D0,i=1,2,…,n—1}基本操作:(1)InitList(L)(2)DestroyList(L)(3)ClearList(L)(4)EmptyList(L)(5)ListLength(L)(6)Locate(L,e)(7)GetData(L,i)(8)InsList(L,i,e)(9)DelList(L,i,&e)}ADT LinearList2、ADT String{数据对象:D={a i|a i∈CharacterSet,i=1,2,…,n;n≧0}数据关系:R={〈a i-1,a i>|a i—1,a i∈D,i=2,…,n;n≧0}基本操作:(1)StrAsign(S,chars)(2)StrInsert(S,pos,T)(3)StrDelete(S,pos,len)(4)StrCopy(S,T)(5)StrEmpty(S)(6)StrCompare(S,T)(7)StrLength(S)(8)StrClear(S)(9)StrCat(S,T)(10)SubString(Sub,S,pos,len)(11)StrIndex(S,pos,T)(12)StrReplace(S,T,V)(13)StrDestroy(S)}ADT String●系统中的子程序和功能说明:InitBo(Book &boo);初始化图书信息InitRe(lend &Lin);初始化借阅者信息BinarySearch(Book boo,char SearchNum[]);二分法查找比较书号Buy(Book &boo, char BuyNum[]);新书采编入库系统Delete(Book &boo,char DeleteNum[]);清除图书信息系统Borrow(Book &boo,lend &Lin,char BorrowNum[],char CaNum[]);借阅图书处理系统Return(Book &boo,lend &Lin,char ReturnNum[],char BorrowerNum[]);归还图书系统SearchByNum(Book &boo,char SeaNum[]);按书号查找系统SearchByName(Book &boo);按书名查找系统SearchByAuth(Book &boo);按作者查询系统Menu();主菜单显示系统Search();查询系统子菜单main();主函数●系统程序功能结构图三详细设计●功能实现过程bool BinarySearch(Book boo,char SearchNum[]) //二分法查找比较书号{while(low〈=high){计算中间点;if(查找到书号相同的){返回值true;}if(查找书号不相同)用二分法进一步进行查找;}if(库中没有所要查找的书)返回值false;}void Buy(Book &boo, char BuyNum[])/*采编入库*/{if(书库中有此书){总库存加1;现库存加1;}if(书库中无此书){for(i=total;i>mid&&total;i—-)/*将新采购的书插在适合位置,保持有序*/空出插入位置;输入新购书籍的相关信息:书号、书名、作者、出版社;boo[i]。

数据结构课程设计图书管理系统

数据结构课程设计图书管理系统

数据结构课程设计图书管理系统在当今数字化的时代,图书管理系统对于图书馆的高效运作和管理至关重要。

作为数据结构课程设计的一部分,设计一个功能齐全、操作便捷的图书管理系统,不仅能够巩固我们所学的数据结构知识,还能提高我们解决实际问题的能力。

一、需求分析一个完善的图书管理系统应具备以下基本功能:1、图书信息管理:包括图书的书名、作者、出版社、出版年份、ISBN 号、分类号、库存数量等信息的录入、修改、查询和删除。

2、读者信息管理:记录读者的姓名、性别、身份证号、联系电话、借阅证号、借阅记录等,同时支持读者信息的增删改查。

3、借阅管理:实现读者的借书、还书操作,能够记录借阅日期和应还日期,并自动计算逾期天数和罚款金额。

4、图书查询:提供多种查询方式,如按书名、作者、出版社、分类号等进行精确或模糊查询,以便读者快速找到所需图书。

5、统计分析:能够统计图书的借阅次数、热门图书排行、读者借阅情况等,为图书馆的管理决策提供数据支持。

二、数据结构选择为了实现上述功能,我们需要选择合适的数据结构来存储和管理图书和读者的信息。

1、图书信息和读者信息可以使用结构体数组来存储。

结构体可以包含图书或读者的各项属性,数组则方便进行批量操作和遍历。

2、对于图书的分类和索引,可以使用二叉查找树或哈希表。

二叉查找树可以保证有序性,便于中序遍历获取排序后的图书信息;哈希表则能够快速定位特定的图书或读者,提高查询效率。

3、借阅记录可以使用链表来存储,便于动态地添加和删除借阅信息。

三、系统功能模块设计1、登录模块系统管理员和读者分别拥有不同的登录入口和权限。

管理员可以进行所有操作,读者只能进行查询和借阅相关操作。

2、图书管理模块图书录入:管理员输入图书的详细信息,将其添加到图书信息数组中。

图书修改:根据图书的 ISBN 号或其他唯一标识,修改图书的相关信息。

图书删除:按照指定条件删除图书记录。

图书查询:提供多种查询条件,快速检索图书信息。

数据结构课程设计———图书馆管理系统

数据结构课程设计———图书馆管理系统

数据库原理及应用——图书馆管理系统数据库设计一.需求分析需求分析的任务是调查应用领域,对应用领域中各应用的信息要求和操作要求进行详细分析,形成需求分析说明书。

重点是调查,收集与分析用户在数据管理中的信息要求、处理要求、数据的安全性与完整性要求。

功能模块设计将图书管理系统业务分为四个大的方面:学生数据管理、图书征订管理、藏书管理、图书流通管理。

功能模块图功能模块分析办卡、挂失、注销学生在图书馆中必须持卡办理一切业务,新生必须首先办理借书卡,当借书卡丢失时需办理挂失业务,毕业生或中途退学者必须办理注销卡业务,以防止借书卡的流失。

查询、借书、环书、注销学生在图书馆中持卡可以进行以下业务:查询自己借书状态,借书,还书,当所借书籍丢失时需办理注销业务。

图书查询、缺书登记学生需要查询自己所需书籍时,若馆中有则直接借书;若馆中没有,可以进行缺书登记。

数据流程分析与设计数据流程图数据字典的建立数据字典数据字典是我在数据流程图中选取的一些中层数据流,我把我所抽去的数据列出以下表来。

数据项二.概念结构设计E-R图根据前面的需求分析,可以将图书管理系统数据库实体划分为图书信息实体集、学生信息实体集、馆藏地实体集、借书卡信息实体集、缺书信息实体集,各实体集里还包含不同的实体以下包括所有的实体。

学生:{学号,姓名,性别,年级,学院,专业,班级}图书:{条码号,书名,作者,出版社,定价,馆藏地编号,图书状态,借阅状态}馆藏地:{馆藏地编号,馆藏地名称}借书卡:{卡号,卡状态,学号}缺书:{书名,作者,出版社,定价,搜索频率}学生日常事务信息:{卡号,时间,欠书状态,超时罚款} E-R图三.逻辑结构设计概念模型向关系模型的转变将E-R图转换为关系模型,即将实体、实体的属性和实体之间的联系转化为关系模式,为应用程序建立专门的视图而不必要应用程序直接访问数据表关系模式的设计StudentBookJieyue(应还时间—借书时间)等于一个月PlaceRountin对时间的检查,当借还书中的还书时间小于应还时间时,超时罚款为零;当超过应还时间未还书时,开始计费,超时罚款=(时间-应还时间)*0.01;当借还书中的还书时间确定时,超时罚款=(还书时间-应还时间)*0.01。

数据库课程设计报告图书管理系统(DOC)

数据库课程设计报告图书管理系统(DOC)

数据库原理课程设计报告书课题名图书信息管理系统指导教师日期目录1、概述 ................................................................................................................................... - 1 -1.1 开发目的 ......................................................................................................................... - 2 -图书信息管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。

我们小组开发图书管理信息系统就是采用现代化的信息管理方式代替手工管理方式,提高图书管理工作效率,做到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校、社会服务。

- 2 -2、需求分析 ................................................................................................................................... - 2 -2.1可行性分析 ...................................................................................................................... - 2 -2.1.1技术可行性......................................................................................................... - 2 -2.1.2经济可行性......................................................................................................... - 2 -目标系统开发需求比较低,加上具有成熟的软硬件环境,所以在软硬件的支出上十分有限。

数据结构图书管理系统课程设计报告

数据结构图书管理系统课程设计报告

一、设计题目与要求【问题描述】设计一个计算机管理系统完成图书管理基本业务。

【基本要求】(1) 每种书的登记内容包括书号、书名、着作者、现存量和库存量;(2) 对书号建立索引表(线性表)以提高查找效率;(3) 系统主要功能如下:①采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;②借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;③归还:注销对借阅者的登记,改变该书的现存量。

二、小组分工小组成员:小组分工:图书初始化、新书入库、登记读者信息、文件保存借书系统、还书系统图书信息查询、读者信息查询三、需求分析图书管理系统共需要八个模块,分别是1图书初始化、2新书入库、3添加读者信息、4借书模块、5还书模块、6查询图书信息、7查询读者信息、8退出。

我负责其中的四个模块,如下所示:1)图书初始化输入图书的一些信息,编号、作者、书名、数量,使有一定的库存。

2)新书入库新书采编入库,输入编号后如果有次数只需输入数量,没有则继续输入书名、作者、数量。

3)添加读者信息读者信息初始化,输入读书证号和姓名,只有输入书证号和姓名才能进行借书还书4)退出和文件保存点的指针。

读者信息里面包括:读者编号、读者姓名、借书数量、可借图书数量、指向下一节点的指针。

所有图书和读者都分别以链表的形式存储,并以编号为唯一主键。

采用链表形式便于数据的添加与删改。

主要的操作为:系统初始化,图书入库,读者信息登记,图书信息和读者信息文件的保存。

五、详细设计数据结构的定义:图书信息:typedef struct book{char book_num[10];char book_name[20];char book_writer[10];int book_xy;int book_kc;struct book *next;}BK;读者信息:typedef struct reader{char reader_num[10];char reader_name[10];int right;BO borrow[Max];struct reader *next;}RD;算法描述:进入系统后首先进行图书初始化,输入图书的信息。

数据结构课程设计图书管理系统

数据结构课程设计图书管理系统

数据结构课程设计图书管理系统设计图书管理系统一、引言图书管理系统是为了方便图书馆进行图书的管理、借阅和归还而开发的软件系统。

本文将详细介绍设计一个图书管理系统所需的标准格式文本。

二、系统概述本图书管理系统旨在提供一个高效、便捷的图书管理平台,帮助图书馆实现图书的分类、借阅、归还、查询等功能。

系统主要包括以下模块:图书管理模块、借阅管理模块、读者管理模块、系统管理模块。

三、图书管理模块1. 图书录入功能a. 系统管理员可以录入新书籍的相关信息,包括书名、作者、出版社、ISBN 号、价格等。

b. 系统应提供图书信息的校验功能,确保录入的图书信息准确无误。

c. 系统应提供图书封面图片上传功能,以便读者更直观地了解图书。

2. 图书查询功能a. 读者和管理员可以根据关键字、作者、出版社等条件进行图书查询。

b. 系统应提供模糊查询和精确查询两种方式,以满足不同用户的需求。

3. 图书借阅功能a. 读者可以通过系统查询图书的借阅情况,并选择借阅。

b. 系统应记录借阅信息,包括借阅时间、归还时间等。

4. 图书归还功能a. 读者在归还图书时,系统应自动计算借阅天数,并生成相应的借阅费用。

b. 系统应提供归还图书的操作记录,以便管理员查看。

四、借阅管理模块1. 借阅记录查询功能a. 管理员可以查询所有借阅记录,并根据条件进行筛选。

b. 系统应提供按照借阅时间、归还时间等进行排序的功能,方便管理员进行统计分析。

2. 借阅统计功能a. 系统应提供借阅数量、借阅率等统计功能,方便管理员对图书馆的借阅情况进行分析。

五、读者管理模块1. 读者注册功能a. 读者可以通过系统进行注册,并填写个人信息。

b. 系统应提供校验功能,确保读者信息的准确性。

2. 读者信息修改功能a. 读者可以通过系统修改个人信息,如联系方式、密码等。

3. 读者信息查询功能a. 读者可以查询自己的借阅记录、借阅情况等。

六、系统管理模块1. 管理员管理功能a. 系统管理员可以管理其他管理员的账号和权限。

(完整word版)图书管理系统课程设计

(完整word版)图书管理系统课程设计

目录一、绪论 (4)1。

1开发背景 (4)二、可行性分析报告 (4)2。

1引言 (4)2.1。

1编写目的 (4)2.1。

2项目背景 (4)2。

1.3定义 (4)2.1。

4参考资料 (5)2。

2技术可行性 (5)2。

3操作可行性 (5)2。

4时间、设备可行性 (5)2。

5对现有系统的分析 (5)2.5.1处理流程和数据流程 (5)2。

5.2工作负荷 (5)2.5.3费用支出 (6)2。

5.4人员 (6)2。

5。

5设备 (6)2.5。

6局限性 (6)2。

6所建议的系统 (6)2.6.1对系统的简要描述 (6)2.7系统工作量 (6)2。

9文档要求 (6)三、需求分析说明书 (6)3.1引言 (6)3。

1。

1编写目的 (6)3。

1。

2项目背景 (6)3.1.3定义 (6)3。

1.4参考资料 (7)3.2系统介绍 (7)3.3系统面向的用户群体 (7)3。

4系统的功能性需求 (7)3。

5系统的非功能性需求 (7)3.5。

1用户界面需求 (7)3.5.2软硬件环境需求 (7)3.5.3软件质量需求 (8)3.6系统E-R图 (8)四、开发环境与项目规划 (8)4。

1开发环境 (8)4.2项目规划与管理 (8)4。

2.1开发人员安排 (8)五、软件界面设计标准与规范 (9)5.1编写目的 (9)5.2界面设计思想 (9)5。

4界面设计样式 (9)5。

5常见错误信息样式 (9)5。

6其他界面约定...................................................................................9六、概要设计说明书 (10)6.1引言 (10)6。

1。

1编写目的 (10)6。

1。

2项目背景 (10)6.1。

3定义 (10)6.1。

4参考资料 (10)6.2系统概述 (10)6。

3系统总体结构图 (10)6。

4系统局部模块IPO表 (11)七、详细设计说明书 (12)7。

图书管理系统 数据结构 课程设计

图书管理系统 数据结构  课程设计
{
cout<<"\n☆☆☆☆☆☆☆☆☆☆☆☆读★★者★★信★★息★★列★★表☆☆☆☆☆☆☆☆☆☆☆\n\n";
cout<<"姓名\t\t\t班级\t\t\t电话\n";
for(int i=0;i<length;i++)
{ cout<<readers[i].get_rname();
cout<<"\t\t\t"<<readers[i].get_rclass();
int i=0;
while((fread.read((char *)&readers[i],sizeof(Reader))))//计算并返回所占字节数
i++;
length=i;
fread.close();//关闭磁盘文件
}
void saveFile() //保存读者文件
{ ofstream fwrite; //定义输出文件流对象fwrite
if(!fwrite)
{cout<<"文件保存失败!\n"; exit(1); }
fwrite.open(ReaderFile,ios::binary);//使文件流与文件关联,以二进制方式打开
fwrite.write((char *)readers,length*sizeof(Reader));//计算并返回所占字节数
C.借书处理包括在“图书状态”中加上“未借”标记。
⑤查询图书:
A.按书号查找:通过编号查询该图书资料,若该编号存在,则显示图书信息,否则提示无该图书信息。
B.按书名查找:通过书名查询该图书资料,若该编号存在,则显示图书信息,否则提示无该图书信息。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构课程设计图书管理系统一需求分析该程序是模拟图书馆管理系统,实现图书采编入库、借书、还书、查询等基本业务。

此程序规定:(1) 管理员能够向系统中输入每种书的基本信息,包括书号、书名、作者、现存量和库存量、借阅记录,并保存记录;(2) 用户(读者)能够按书号、书名、作者查询图书信息;(3) 管理员能够实现图书采编入库(新购入一本书,经分类和确定书号之后登记到图书账目中去。

如果这种书在帐中已有,则只将总库存量增加)、借阅(如果书的现存量大于0,则借出一本,登记借阅者的图书证号和归还期限)、归还(删除对借阅者的登记,改变该书的现存量)、销毁(将图书从账目中删除)等操作。

二概要设计系统用到的抽象数据类型定义:1、ADT LinearList{数据元素:D={a i|a i∈D0,i=1,2,…,n,n≥0,D0为某一数据对象}关系:S={<a i,a i+1>|a i,a i+1∈D0,i=1,2,…,n-1}基本操作:(1)InitList(L)(2)DestroyList(L)(3)ClearList(L)(4)EmptyList(L)(5)ListLength(L)(6)Locate(L,e)(7)GetData(L,i)(8)InsList(L,i,e)(9)DelList(L,i,&e)}ADT LinearList2、ADT String{数据对象:D={a i|a i∈CharacterSet,i=1,2,…,n;n≧0}数据关系:R={<a i-1,a i>|a i-1,a i∈D,i=2,…,n;n≧0}基本操作:(1)StrAsign(S,chars)(2)StrInsert(S,pos,T)(3)StrDelete(S,pos,len)(4)StrCopy(S,T)(5)StrEmpty(S)(6)StrCompare(S,T)(7)StrLength(S)(8)StrClear(S)(9)StrCat(S,T)(10)SubString(Sub,S,pos,len)(11)StrIndex(S,pos,T)(12)StrReplace(S,T,V)(13)StrDestroy(S)}ADT String●系统中的子程序和功能说明:InitBo(Book &boo);初始化图书信息InitRe(lend &Lin);初始化借阅者信息BinarySearch(Book boo,char SearchNum[]);二分法查找比较书号Buy(Book &boo, char BuyNum[]);新书采编入库系统Delete(Book &boo,char DeleteNum[]);清除图书信息系统Borrow(Book &boo,lend &Lin,char BorrowNum[],char CaNum[]);借阅图书处理系统Return(Book &boo,lend &Lin,char ReturnNum[],char BorrowerNum[]);归还图书系统SearchByNum(Book &boo,char SeaNum[]);按书号查找系统SearchByName(Book &boo);按书名查找系统SearchByAuth(Book &boo);按作者查询系统Menu();主菜单显示系统Search();查询系统子菜单main();主函数●系统程序功能结构图三详细设计●功能实现过程bool BinarySearch(Book boo,char SearchNum[]) //二分法查找比较书号{while(low<=high){计算中间点;if(查找到书号相同的){返回值true;}if(查找书号不相同)用二分法进一步进行查找;}if(库中没有所要查找的书)返回值false;}void Buy(Book &boo, char BuyNum[])/*采编入库*/{if(书库中有此书){总库存加1;现库存加1;}if(书库中无此书){for(i=total;i>mid&&total;i--)/*将新采购的书插在适合位置,保持有序*/空出插入位置;输入新购书籍的相关信息:书号、书名、作者、出版社;boo[i].next=NULL;total++;/*总量加1*/}}void Delete(Book &boo,char DeleteNum[])/*清除图书信息*/{if(书库中没有此书)输出“无此书”;if(书库中有此书){strcpy(连续两本书的相关信息);现存量减1;库存量减1;}else 输出“此书已有借阅者,无法删除!”;}void Borrow(Book &boo,lend &Lin,char BorrowNum[],char CaNum[])/*借阅图书信息*/ {if(没有找到此书) 输出“书库中无此书!”;if(书库中有此书){借出一本书后,该书的现存量减1;并在借阅记录链表中插入该条记录;再对应读者信息记录链表,如果已有该读者证号信息,直接在该链表中插入此次借阅记录;如果无该读者证号信息,申请新单链表存放借阅记录。

}else 输出“该书现存量为0”;}void Return(Book &boo,lend &Lin,char ReturnNum[],char BorrowerNum[])/*归还图书信息*/{if(书库中无此书)输出“无此书记录”;if(书库中有此书){查找图书文件,修改图书的现存量;查找记录借阅信息的单链表,填入还书日期,删除借阅信息;查找记录读者信息的单链表,删除证号信息。

}}void SearchByNum(Book &boo,char SeaNum[])/*按书号查找*/{if(书库中无此书信息)/*用二分法查找*/输出“无此书”;else/*书库中有此书信息*/输出与此书有关的相关信息;}void SearchByName(Book &boo)/*按书名查找*/{输入想要查找书的书名;用顺序查找法查找;if(查找到需要查找的书)输出与此书相关的信息;}建议画出主要模块流程图。

四设计与调试分析1、这个程序设计中要注意定义两个结构体:图书结构体、借阅人结构体。

其中定义数组存放图书信息,申请链表存放借阅记录和读者信息记录。

2、程序中运用到大多的插入与删除,所以申请链表比较方便插入与删除。

但应前期需求分析的准备工作不充分,导致程序运行功能不全,比如查找时关于此书的信息不能全部显示出来,并且添加删除时库存的变化不能直接显示出来。

程序的健壮性不能达到预期的结果,这些都是需要改进的。

3、在程序中的函数调用是个非常重要的部分,也是经常需要用到的,在编写程序过程中,因为函数调用不准确,使得循环进不去,后来改变函数的调用关系,才达到了预期结果。

4、程序中还定义了全局变量,之前没定义全局变量,在下面的编写过程,同样性质的地方需要重复定义,比较麻烦,定义全局变量使得程序比较简明一点。

五用户手册【使用说明】1、进入图书馆管理系统主页面2、若有新书要新编入库,选择1,进入新书入库系统,输入入库书的书号,若书库中无该书,则设立新书目,输入新书信息。

若书库中已有该书,则输入新信息覆盖修改原书库中该书号对应书的信息。

3、若有书籍信息需要删除,选择2,进入清空库存系统,输入想要删除书的书号,则此书信息就已删除。

4、若要借阅图书,选择3,进入图书借阅系统,输入需要借阅书的书号以及读者证号,并输入还书日期,则借书成功。

5、若要归还图书,选择4,进入图书归还系统,输入需要归还图书的书号以及读者证号,则还书成功。

6、若要查找信息,选择5,进入查找信息子系统。

若要按书号查找,则选择子系统中的1,输入需要查找的书的书号,若按书名查找,则选择子系统中的2,输入需要查找的书名,若按作者查找,输入需要查找书的作者进行查找,若查找结束,则按0退出。

7、若系统使用结束,按0退出。

【程序中的头文件】#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAXSIZE 100#define LIST_INIT_SIZE 100int Retotal;/*定义的全局变量*/int total;六测试成果1、采编入库2、清空库存3、图书借阅4、图书归还5、图书查找七附录(源程序清单)#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAXSIZE 100#define LIST_INIT_SIZE 100typedef struct Boro{char BNum[20];char RetDate[8];struct Boro *next;}Bor;typedef struct LinkBook{Bor *next;char CNum[20];int Total;}lend[LIST_INIT_SIZE];typedef struct LNode{char CardNum[20];struct LNode *next;}LinkList;typedef struct book{char num[20];char name[20];char auth[20];char pub[20];int TotNum;int NowNum;LinkList *next;}Book[MAXSIZE];int Retotal;int total;void InitBo(Book &boo){for(int i=0;i<MAXSIZE;i++){boo[i].NowNum=0;boo[i].TotNum=0;boo[i].next=NULL;}}void InitRe(lend &Lin){for(int i=0;i<LIST_INIT_SIZE;i++)Lin[i].next=NULL;}int mid=0;bool BinarySearch(Book boo,char SearchNum[]){int low=0,high=total;int found=0;while(low<=high){mid=(low+high)/2;if(strcmp(boo[mid].num,SearchNum)==0){found=1;return true;}if(strcmp(boo[mid].num,SearchNum)!=0)high=mid-1;elselow=mid+1;}if(found==0)return false;}void Buy(Book &boo, char BuyNum[]){int i;if(BinarySearch(boo,BuyNum)){boo[mid].TotNum++;boo[mid].NowNum++;printf("入库成功.\n");printf("已更改书库中该书的信息。

相关文档
最新文档