第一范文网 - 专业文章范例文档资料分享平台

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

来源:用户分享 时间:2025/8/10 8:13:52 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

实用标准文案

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

一 需求分析

该程序是模拟图书馆管理系统,实现图书采编入库、借书、还书、查询等基本业务。此程序规定:

(1) 管理员能够向系统中输入每种书的基本信息,包括书号、书名、作者、现存量和库存量、借阅记录,并保存记录;

(2) 用户(读者)能够按书号、书名、作者查询图书信息;

(3) 管理员能够实现图书采编入库(新购入一本书,经分类和确定书号之后登记到图书账目中去。如果这种书在帐中已有,则只将总库存量增加)、借阅(如果书的现存量大于0,则借出一本,登记借阅者的图书证号和归还期限)、归还(删除对借阅者的登记,改变该书的现存量)、销毁(将图书从账目中删除)等操作。

二 概要设计

? 系统用到的抽象数据类型定义:

1、ADT LinearList{

数据元素:D={ai|ai∈D0,i=1,2,…,n,n≥0,D0为某一数据对象} 关系:S={|ai,ai+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 LinearList 2、ADT String{

数据对象:D={ai|ai∈CharacterSet,i=1,2,…,n;n≧0} 数据关系:R={|ai-1,ai∈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[])/*归还图书信

精彩文档

(完整word版)大数据结构课程设计图书管理系统.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c24cds5nef39epjx24qwd4i6jo0x1tb012aq_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top