图书管理系统实验报告Word下载.docx
- 文档编号:14402087
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:14
- 大小:219.65KB
图书管理系统实验报告Word下载.docx
《图书管理系统实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《图书管理系统实验报告Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
1.1.1需求分析
1.能够实现读者可以自助注册。
2.能够实现多种关键字查书,及查看所有馆藏书目功能。
3.实现管理人员借书,还书功能。
4.实现管理人员,对于读者,工作人员的修改(包括添加删除)
5.能够实现管理人员添加,修改馆藏书目。
6.能够实现上层人员查看下层人员信息。
1.1.2系统性能
1.系统安全
2.功能齐全
3.实现一般的纠错功能(即对读者一般的输入错误判断)
4.易于维护和扩充数据
1.2功能介绍
图书管理系统(LMS)用于图书馆进行图书的管理,主要的功能包括借书、还书、查找等。
不同的使用对象具有不同的权限,详细见下表:
表1系统功能表
使用对象
功能
详细功能
读者
查看/修改个人信息,查看个人借阅信息
查询图书信息(根据不同字段查询)
工作人员
查询读者信息(个人信息和读者借书情况)
还书
借书
管理人员
维护图书信息
添加、编辑图书信息
维护读者信息
添加、删除、编辑读者信息
维护人员信息
添加、删除工作人员信息
1.2.1详细功能简介
登录
选择登录身份(读者、工作人员、管理员),输入用户名和密码,成功后进行相应的功能模块。
读者模块
读者可以查找馆藏书目,了解图书馆有哪些书,是否可借。
(可选择根据不同字段查找书本也可全显书本)
读者可以查看个人借书情况和修改基本个人信息、修改密码。
工作人员模块
可以查找馆藏书目,了解图书馆有哪些书,是否可借。
根据读者用户名查询读者信息,显示该读者基本信息,和借书情况。
读者信息高级查找可以根据姓名等其他信息进行查找(可选功能)
借书功能:
首先输入读者用户名,在该状态下依次输入该读者借的书,完成图书的借阅工作。
还书功能:
直接输入图书号,将该书的信息改为入库,并修改读者的借书记录。
管理员模块
维护图书信息:
添加:
进入添加状态,根据提示依次输入图书的基本信息,默认状态下为继续输入。
修改:
输入书号,找到该书,根据提示选择该图书需要修改的字段,并进行修改。
删除:
删除工作人员,读者
1.3设计思路
采用面向对象的方式实现图书管理系统,根据不同的使用权限,使用对象分为读者、工作人员和管理员。
图11系统主要类结构图
分别设计读者类、工作人员类、管理员类(如上图),人员类为基类实现通用的功能。
(如查找图书信息)
用文本文件进行数据的保存,需要保存的数据主要包括图书数据、用户数据(包括读者、工作人员、管理员)。
设置数据操作类,实现所有的文本操作相关的功能。
2数据设计与类的作用
2.1数据设计
2.1.1图书数据设计
表2book文件字段设计表
字段名称
中文名
类型
no
书号
Int
name
书名
Char(40)
author
作者
Char(20)
press
出版社
storenum
藏书量
borrownum
借出数
2.1.2读者数据设计
表3Users文件字段设计
Name
用户名
Char(15)
Truename
真实姓名
Char(10)
Password
登录密码
Char(9)
Sex
性别
Char(3)
borrows
借阅书数目
Borrow
所借阅的书号
Int(5)
2.1.3其他用户数据设计
表4其他用户(管理员,工作人员)字段设计
password
密码
2.1.4存储文件设计
reader.txt存储读者信息,数据顺序为用户名,密码,性别,年龄,书名号
manager.txt存储管理员信息,数据顺序为用户名,密码
worker.txt存储工作人员信息,数据顺序为用户名,密码
book.txt存储书本信息,数据顺序为书名号,书名,作者,出版社,馆藏数量,借出数量
2.2类的作用
2.2.1people类(基类)
people类包含成员:
charname[15]//储存用户名
charpassword[10]//储存密码
people()//成员函数有默认构造函数
virtual~people()//虚析构函数函数
char*getname()//读取用户名
char*getpass()//读取密码
voidsetname(char*)//设置用户名
voidsetpass(char*)//设置密码
voidsearch_book(book*)//跳出查书界面
函数book*find_book(long,book*),voidsearch_one_book(book*Bhead)//用于按书号查找图书
函数voidprint_all_book(book*)//查看全部图书
2.2.2reader类(people类派生)
reader类包含成员:
charsex[2]//储存性别
intage//储存年龄
intborrows//储存借书总数
longborrow[10]//储存具体借书
reader*next//连接下一个的链表
reader()//成员函数有默认构造函数
virtual~reader()//虚析构函数
函数voidoutput()//输出读者信息
函数voidupdate_reader()//修改个人信息
函数voidoutput_borrows(book*)//查看个人借书情况。
2.2.3workers类(people类派生)
workers类包含成员:
worker*next//连接下一个的链表
worker()//成员函数有默认构造函数
virtual~worker()//虚析构函数
函数voidborrow_book(reader*,book*)//借书
函数voidreturn_book(reader*,book*)//还书
函数reader*find_reader(char*,reader*)//查看读者信息
友元函数friendistream&
operator>
>
(istream&
in,worker&
w)//重载>
操作符
2.2.4manger类(people类派生)
manger类包含成员:
manger*next//连接下一个的链表
manger()//成员函数有默认构造函数
virtual~manger()//虚析构函数
函数reader*find_reader(char*,reader*),voidupdate_reader(reader*)//更新读者信息函数
worker*find_worker(char*,worker*),voidupdate_worker(worker*&
),voidupdate_add_worker(worker*),voidupdate_delete_worker(worker*&
)//更新工作人员信息
函数voidupdate_book(book*&
),voidupdate_add_book(book*),voidupdate_delete_book(book*&
),voidupdate_revise_book(book*)//更新图书馆藏书信息
2.2.5book类
book类包含成员:
longno//储存书号
charname[40]//储存书名
charauthor[20]//储存作者
charpress[40]//储存出版社
intstorenum//储存馆藏数目
intborrownum//储存借书数目
book*next//连接下一个的链表
book()//成员函数有默认构造函数
virtual~book()//虚析构函数
函数voidoutput()//输出图书信息
友元函数friendostream&
operator<
<
(ostream&
ou,constbook&
b),friendistream&
in,book&
b)//重载操作符<
和>
2.2.6DBFile类
该类的每个对象操作一个数据文件,包含读、存、查找、删除数据的函数:
函数book*load_book(),reader*load_reader(),worker*load_worker(),manger*load_manger()//读入文档中的书,读者,工作人员和管理人员的数据
函数voidlogin_reader(reader*Rhead,book*Bhead),voidlogin_worker(worker*Whead,book*Bhead,reader*Rhead),voidlogin_manger(manger*Mhead,book*&
Bhead,reader*Rhead,worker*&
Whead)//读者工作人员和管理人员的登录
函数voiddealchoice(reader*here,book*Bhead),voiddealchoice(worker*here,book*Bhead,reader*Rhead),voiddealchoice(manger*here,worker*&
Whead,book*&
Bhead,reader*Rhead)//登录后读者工作人员和管理人员的相关操作
函数voidregisterreader(reader*Rhead)//新读者的注册
函数voidsave_book(book*Bhead),voidsave_reader(reader*Rhead),voidsave_worker(worker*Whead),voidsave_system(book*Bhead,reader*Rhead,worker*Whead)//保存数据到文档
3数据测试:
3.1选择登录类型
如图为登入界面,根据用户的需要选择登入的方式
3.1.1读者登录
选择2之后进入读者登入界面,
如果输入不正确会出现如图:
输入正确后会出现:
选①查看馆藏
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 实验 报告