1、 面向对象程序设计面向对象程序设计 课程设计课程设计 题 目 图书管理系统的设计 计算机科学学院 计算机科学与技术 专业 2011 级 计算科学与技术本科 班 1 一一. .问题问题的的分析与功能分析与功能的的定义定义: 二十一世纪是信息的社会,信息作为社会最主要的资源,将成为战略资源 引起人们广泛的关注。如何获取信息呢!图书是我们最好的获取信息的方式,但 由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来。迫 使人们起用新的管理方法来管理图书。因此新的图书管理系统也以方便、快捷、 费用低的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出 来,提高效率,减轻工人人员
2、以往繁忙的工作,减小出错的概率,使读者可以花 更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、 掌握信息 。 1、设计内容及要求: (1)设计一个图书馆管理系统,完成图书管理和读者管理的功能,并能对 借阅信息进行管理,要求完成以下功能:图书资料管理,可以添加、修改、删除、 查询书籍信息;读者资料管理,可以添加、修改、删除、查询读者信息;借书管 理,可以进行添加借书信息;还书管理,可以进行还书信息。 (2)该项目是在 Visual C+ 6.0 的平台下用 c+语言实现。 2.模块图: 二二. .对象(类)设计及实现对象(类)设计及实现: 1、概要设计: Reader 读者
3、类、RDatabase 读者库类、Book 图书类、BDatabase 图书库类。 2、详细设计: (1)类的原型描述 class Reader /读者类 int tag;/删除标记 1:已删 0:未删 ; int no;/读者编号; char name10;/读者姓名; int borbookMaxbor; /所借图书. Reader() char *getname() /获取姓名; int gettag() /获取删除标记; int getno() /获取读者编号; void setname(char na)/设置姓名; void delbook() /设置删除标记; void addre
4、ader(int 图书馆 管理系 借书 读者 维护 图书维 护 还书 离开 1 class Book /图书类 int tag; /删除标记 1:已删 0:未删; int no; /图书编号; char name20;/书名; int onshelf;/是 否在架 1:在架 0:已借. Book() char *getname();/获取姓名; int getno();/获取图书编号; int gettag(); /获取删除标记; void setname(char na);/设置书名; void delbook();/删除图书; void addbook(int n,char *na);/增
5、 加图书; int borrowbook() ;/借书操作; void retbook();/还书操作; void disp();/输出图书. 三三. .核心控制设计核心控制设计 1、在主函数中我们要做的操作有: (1)建立 Reader 读者类,RDatabase 读者库类,Book 图书类,BDatabase 图书 库类。 (2)建立菜单界面,从而完成以下内容: 进入功能必须打开菜单,然后用户根据菜单选择相应的提示进行操作,如 借书,还书,图书维护,读者维护,退出等。 从而进入相应的菜单中对相应的信息进行了解并进行统计。 (3) 将图书基本信息、图书采购信息、图书的借阅人信息存储下来。 (
6、4) 系统界面简洁,易操作。 2、本程序应具备的功能: A.添加、借阅、还书功能: (1)添加读者和图书信息。 (2)借阅尚在架的图书。 (3)读者归还的图书。 B.查找功能 (1) 根据图书的图书号和编号查找图书信息。 (2)根据读者的编号查找读者的信息。 C.系统的操作 (1) 系统在进入时,要有主菜单提示。 (2) 系统在用户退出时,也要有一定的提示。 3、算法分析 (1)添加操作: n,char *na); /增加读者; void borrowbook(int bookid); /借书操作; int retbook(int bookid); /还书操作; void disp(); /输出读者信息. class BDatabase /图书库类 int top;/图书记录指针 Book bookMaxb;/图书记录 BDatabase() ;/构造函数,将 book.txt 读到 book中; void clear();/全删; in