《面向对象程序设计(C++)》 图书管理系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(此文档为word格式,下载后您可任意编辑修改!)
《面向对象程序设计(C++)》
项目名称:图书管理系统设计
一、问题分析与功能定义
二十一世纪是信息的社会,信息作为社会最主要的资源,将成为战略资源引起人们广泛的关注。如何获取信息?图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来。迫使人们起用新的管理方法来管理图书,但如何把图书管理员从繁重的工作中解脱出来呢?
科学技术日新月异的进步,让人类生活发生了巨大的变化,计算机技术的飞速发展,使各行各业在计算机技术应用方面得到了广泛的普及和使用。信息化时代的到来成为不可抗拒的潮流,人类文明正在进入一个崭新的时代。因此,图书管理系统也以方便、快捷、费用低的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减轻工人人员以往繁忙的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、掌握信息。
1、设计内容及要求
设计一个图书馆管理系统,完成图书管理和读者管理的功能,并能对借阅信息进行管理,要求完成一下功能,图书资料管理,可以添加、修改、删除、查询书籍信息,读者资料管理,可以添加、修改、删除、查询读者信息;借书管理,可以进行添加借书信息;还书管理,可以进行还书信息;
该项目是在Visual C++ 6.0的平台下用c++语言实现,创建对象,程序运
行开始,打开文件并将其分别链入链表之中;程序结束关闭并保存文件。整体系
统功能全部由链表实现。
2、模块图
二、对象(类)设计及实现
1、概要设计
Reader读者类、RDatabase读者库类、Book图书类、BDatabase 图书库类
class RDatabase //读者库类
2、详细设计
1)类的原型描述
class Reader //读者类
int tag;//删除标记1:已删0:未删
int no;//读者编号
char name[10];//读者姓名
int borbook[Maxbor];//所借图书
Reader() {}
char *getname() //获取姓名
int gettag() //获取删除标记
int getno() //获取读者编号
void setname(char na[])//设置姓名
void delbook() //设置删除标记
void addreader(int n,char *na); //增加读者void borrowbook(int bookid); //借书操作int retbook(int bookid); //还书操作
void disp(); //输出读者信息int top;// 读者记录指针
Reader read[Maxr];// 读者记录
RDatabase() ;//构造函数,将reader.txt读到read[]中void clear();//删除所有读者信息
int addreader(int n,char *na);//增添读者信息
Reader *query(int readerid);//按编号查找
void disp();//输出所有读者信息
int Readernum();//记录读者信息
void readerdata();//读者库维护
~RDatabase();//析构函数,将read[]写入reader.txt文
class BDatabase //图书库类
int top;//图书记录指针
Book book[Maxb];//图书记录
BDatabase() ;//构造函数,将book.txt读到book[]中
void clear();//全删
int addbook(int n,char *na);//增加图书
Book *query(int bookid);//查找图书
void disp();//输出所有图书信息
void bookdata();//图书库维护
~BDatabase();//析构函数,将book[]写入book.txt文class Book //图书类
int tag; //删除标记1:已删0:未删
int no; //图书编号
char name[20];//书名
int onshelf;//是否在架1:在架0:已借
Book() {}
char *getname();//获取姓名
int getno();//获取图书编号
int gettag(); //获取删除标记
void setname(char na[]);//设置书名
void delbook();//删除图书
void addbook(int n,char *na);//增加图书
int borrowbook() ;//借书操作
void retbook();//还书操作
void disp();//输出图书
三、核心控制设计
1、在主函数中我们要做的操作包括:
(1)建立1个Reader读者类、1个RDatabase读者库类、1个Book图书类、1
个BDatabase 图书库类
(2)建立菜单界面。完成以下内容:
①进入功能必须打开菜单,然后用户根据菜单选择相应的操作方式,如查看
数据、编辑图书数据以及修改图书数据、维护图书的采购信息。添加、删除、查
看读者个人信息,浏览图书信息。
②能够对图书基本信息、图书采购信息、图书的借阅人信息进行统计,统
计的结果能够以表格的形式来表示。
(3) 将图书基本信息、图书采购信息、图书的借阅人信息存储在相应的文件中。
(4) 系统界面友好,易操作。
2、本程序应具备的功能:
A.添加、借阅、还书功能:
(1)添加读者和图书信息。
(2)借阅尚在架的图书。
(3)读者归还的图书。