1
图书馆管理系统
图书馆管理系统
姓名:周敏啸
学号:200926630731
学院:计算机、软件学院
专业班级:软件工程 0907
任课老师:赖梅
完成时间:2010 年 12 月 23 日
目录
2
图书馆管理系统
一.实验需求
二.大型实验内容
三.大型实验总结心得
3
图书馆管理系统
一、实验需求
建立一个图书管理系统,所有图书信息需保存在外部文件中。要求能够实
现基本的图书信息数据检索,插入,删除,更新和排序等功能。要求系统具有
良好的交互界面,图书检索功能可以提供多种方式检索:书名检索,作者名检
索,出版社检索,ISBN信息检索,已经组合检索,如作者名+出版社。图
书信息包括:作者、书名、出版社、出版时间、ISBN、库存数量、已借出
数量;学生可查阅自己的借阅情况,每个学生限制借阅5本图书;学生可通过
选择具体的图书实现还书功能。
二、大型实验内容
1)选择的容器:
使用 B-树实现,但是由于没有实现迭代器,所以对于书籍、学生等查找工
作,以及最后写入文件的操作都写在了该容器类中,对于模版的作用就显得不
是那么明显了,故没写模板类。能对树进行遍历查找,并返回节点中的值。插
入读者,采用的是 ID 号插入;书籍采用的是书名插入,因此 ID 号与书名必须唯
一。可以插入书名等重复的对象。对于每个关键,都做了查找函数,也方便了
组合查找。
2)类
Book 类(书籍)
private:
string ISBN;
string name;
string writer;
string concom;
string conTime
Public :
String onshelfnum;
string bornum;
Book(){}
get();set(); 方法
print();
ostream&operator<<();
Reader 类 ( 读
者)
private:
string number;
string name;
string password;
string sex;
public:
string bornum;
Reader(){}
Set(),get() 方法
void addBook(Book b);
void deleteBook(Book b);
void print();
ostream& operator<<();
Manager 类(管理员)
private:
int no;
string number;
string password;
public:
Manager();
Set(),get() 方法
void print();
4
图书馆管理系统
Library 类(操作)
public:
void welcome();
void inputBook();
void searchBook();
void searchBookName();
void searchBookWriter();
void searchBookConcem();
void searchBookISBN();
void searchBookCombine();
void inputReader();
void readerLand();
void readerOperator(int key);
void showReaderInfo(int key);
void modifyReaderInfo(int key);
void readerWriteInFile();
void inputManager();
void manangerLand();
void manangerOperator(int key);
void searchReader(int key);
void showAllBook(int key);
void updateBook(int key);
void addBook(int key);
void deleteBook(int key);
void modifyBook(int key);
void BookwriteInFile();
void borrowBook(int key);
void returnBook(int key);
void addReader(int key);
void bookSort(int key);
5
图书馆管理系统
3)类关系图
4)运行结果截图和主要功能的流程图
主要界面
Reader
Vector<Book>
Library
容器: B- 树
B
O
O
K
M
a
n
a
g
e
r
- 1
- 2
前往页