面向对象程序设计—图书管理系统设计 下载本文

第1章 概述

1.1 题目及要求

1)问题描述

定义图书类,属性有:书名、出版社、ISBN号、作者、库存量、价格等信息和相关的对属性做操作的行为。主要完成对图书的销售、统计和图书的简单管理。

2)功能要求

(1)销售功能。购买书籍时,输入相应的ISBN号,并在书库中查找该书的相关信息。如果有库存量,输入购买的册数,进行相应计算。如果库存量不够,给出提示信息,结束购买。

(2)图书简单管理功能。

添加功能:主要完成图书信息的添加,要求ISBN号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加。

查询功能:可按书名、ISBN号、作者、出版社进行查询。若存在相应信息,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”。

修改功能:可根据查询结果对相应的记录进行修改,修改时注意ISBN号的唯一性。 删除功能:主要完成图书信息的删除。输入要删除的ISBN号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。

(3)统计功能。

输出当前书库中所有图书的总数及详细信息;可按书的价格、库存量、作者、出版社进行统计,输出统计信息时,要按从大到小进行排序。

图书存盘:将当前程序中的图书信息存入文件中。 读出信息:从文件中将图书信息读入程序。

1.2背景和意义

背景:图书馆是我们日常生活中必不可少的学习、阅读的场所,借阅图书则是我们进入图书馆进行阅读的首要行为。为了能够借阅到我们想要借阅的图书,我们需要借助电脑查询需要借阅的图书的具体信息,然后找出图书后再去借阅处刷卡登记。如今我们处于一个知识大爆炸的时代,图书种类数量剧增,工作人员每天不仅要登记借阅者借阅的图书,还要登记新购进的图书,工作量繁重。而随着科学技术的进步,计算机日益进入我们的生活工作之中,我们能否利用计算机技术,取代原来的手工登记,提高图书管理的效率呢?答案是肯定的。

意义:借助计算机C++中的知识,编写相应的图书管理程序就可以实现这一功能。利用图书管

1

理系统对图书记录进行统一管理,包括新增图书记录,更改图书记录,删除图书记录等功能,实现图书管理工作的系统化,规范化和自动化,为图书管理提供便利。,不仅能节省我们大量的工作时间,减轻巨大的工作量,提高工作效率,还能够减少工作失误。有助于加深对面向对象程序设计中基础理论和基本知识的理解,培养了实践能力,促进理论与实践的结合。

1.3问题的解决方案

根据系统功能要求,可以将问题解决分为以下步骤:

(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

第2章 系统分析

2.1系统的整体需求

该系统需要完成的内容:

用类和对象实现新书上架、 图书浏览、 图书查询、图书下架。 该系统需要完成的整体目标:

系统能够正常运行,基本上实现添加、删除图书信息,显示所有信息,能够由相应条件查阅图书信息这四种功能。

2.2 系统的功能需求

必须完成的模块:

(1)界面模块:当进入该管理系统时候,提示相应的说明,引导如何操作

(2) 新书上架模块:能够添加书号、书名、作者名、出版社、出版时间、价格这些图书信息。 (3) 图书浏览模块:能够输出所有图书信息。

(4) 图书查询模块:可按条件查询图书信息,当输入书号或书名或作者名时候,相对应的图书信息便可自动搜索出来。

(5) 图书下架模块:可按书号删除指定图书信息。

2

2.3系统功能总体设计

图书管理系统主界面 图书查询 图书修改 图书浏览 信息录入 图书删除 系统退出 IS BN 书名 作者 出版社 出版时间 价格 按ISBN 按书名 按作者 按出版社 图1 系统功能总框图

第3章 系统设计

3.1 系统的整体设计

Y 创建新书信息 修改图书信息 图2 系统整体流程图

3

输入a N 开始 a=1 Y a=2 Y N a=3 Y N 显示所有图书 a=4 Y N 按条件查询 a=5 N 按书号删除图书 a=6 结束

3.2 系统的主要模块设计

(1)主界面模块。该模块显示管理程序的名称,提示相应的操作。 (2)信息录入模块。

在主界面情况下,选择1,即进入图书信息录入模块,录完后信息保存到txt文件中。

输入a

图3 信息录入模块流程图

(3)信息修改模块。

程序开始,进入主界面,输入2,输入要修改图书的ISBN,对图书的信息进行修改。

输入a

图4 信息修改模块流程图

4

开始 a=1 创建新书信息 录入ISBN、书名、书号、作者、出版社、出版时间、价格 保存到txt文件中 开始 a=2 输入要修改图书的ISBN 录入新的图书信息 修改完成