图书管理系统-实验报告

  • 格式:doc
  • 大小:420.00 KB
  • 文档页数:16

下载文档原格式

  / 16
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图书管理系统

实验报告

班级:软件工程0807

程序员:赵博聪 200826630726

傅钦聪 200826630708

成金诚 200826630704

2009.6

报告目录

1总体说明 (3)

1.1需求说明 (3)

1.1.1需求分析 (3)

1.1.2系统性能 (3)

1.2功能介绍 (3)

1.2.1详细功能简介 (4)

登录 (4)

读者模块 (4)

工作人员模块 (4)

管理员模块 (5)

1.3设计思路 (5)

2数据设计与类的作用 (6)

2.1数据设计 (6)

2.1.1图书数据设计 (6)

2.1.2读者数据设计 (6)

2.1.3 其他用户数据设计 (6)

2.1.4存储文件设计 (7)

2.2类的作用 (7)

2.2.1people类(基类) (7)

2.2.2reader类(people类派生) (7)

2.2.3workers类(people类派生) (8)

2.2.4manger类(people类派生) (8)

2.2.5book类 (8)

2.2.6DBFile类 (9)

3数据测试: (9)

3.1选择登录类型 (9)

10

3.1.1读者登录 (10)

3.1.2工作人员登录 (12)

3.1.3管理人员登录 (13)

查找图书馆藏书: (14)

更新图书馆藏书 (14)

3.1.4读者注册 (15)

3. 输入新性别(男输入1,女输入0):1 (15)

4. 输入新年龄:19 (15)

3.1.5退出系统 (16)

4实验总结 (16)

1总体说明

1.1需求说明

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设计思路

采用面向对象的方式实现图书管理系统,根据不同的使用权限,使用对象分为读者、工作人员和管理员。

图 1-1 系统主要类结构图

分别设计读者类、工作人员类、管理员类(如上图),人员类为基类实现通用的功能。(如查找图书信息)

用文本文件进行数据的保存,需要保存的数据主要包括图书数据、用户数据(包括读者、工作人员、管理员)。设置数据操作类,实现所有的文本操作相关的功能。

2数据设计与类的作用

2.1数据设计

2.1.1图书数据设计

表 2 book文件字段设计表

2.1.2读者数据设计

表 3 Users文件字段设计

2.1.3 其他用户数据设计

表 4 其他用户(管理员,工作人员)字段设计

2.1.4存储文件设计

reader.txt 存储读者信息,数据顺序为用户名,密码,性别,年龄,书名号

manager.txt 存储管理员信息,数据顺序为用户名,密码

worker.txt 存储工作人员信息, 数据顺序为用户名,密码

book.txt 存储书本信息,数据顺序为书名号,书名,作者,出版社,馆藏数量,借出数量2.2类的作用

2.2.1people类(基类)

people类包含成员:

char name[15]//储存用户名

char password[10]//储存密码

people()//成员函数有默认构造函数

virtual ~people()//虚析构函数函数

char *getname()//读取用户名

char *getpass()//读取密码

void setname(char *)//设置用户名

void setpass(char *)//设置密码

void search_book(book*)//跳出查书界面

函数book* find_book (long,book*),void search_one_book(book* Bhead)//用于按书号查找图书

函数void print_all_book(book*)//查看全部图书

2.2.2reader类(people类派生)

reader类包含成员:

char sex[2]//储存性别

int age//储存年龄

int borrows//储存借书总数

long borrow[10]// 储存具体借书

reader* next//连接下一个的链表

reader()//成员函数有默认构造函数

virtual ~reader()//虚析构函数

函数void output()//输出读者信息

函数void update_reader()//修改个人信息

函数void output_borrows(book*)//查看个人借书情况。