图书馆管理系统设计报告

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

(此文档为word格式,下载后您可任意编辑修改!)

第一章绪论

1.1 课程设计的目的

课程设计是课程教学必不可缺的一个重要环节,可加深学生对该课程所学内容的进一步的了解与巩固,是将计算机课程与实际问题相连接的关键步骤。通过课程设计,能够提高学生的分析问题,解决问题,要能很好的完成课程设计,要求我们必须掌握在学习中学到的知识,所以要我们对课本中学的知识要熟悉且掌握,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。

1.2 课程设计的背景和意义

1.2.1 课程设计的背景

1. 理论研究基础

(1)C++语言的基本知识和技能,如:类与对象,指针,输入/输出流,文本文件的建立保存;

(2)面向对象程序设计的基本思路和方法。

2. 技术层面的支持

(1)研究这些结构的存储、显示,并有查找、添加、删除、修改、查询、统计、保存信息、载入等功能。

(2)类定义、类对象、继承、组合、多态和文件的输入/输出等内容。

1.2.2 课程设计的意义

(1)通过课程设计的综合训练,培养了学生分析解决实际问题和编程等实际动手能力。帮助了同学系统的掌握C++课程的主要内容。

(2)综合实际应用的需求是课程设计既覆盖教学所要求的知识点,有接近工程的实际需求,训练自己实际分析问题和解决问题以及编程的能力。做到理论结合实际。

1.3 课程设计环境

(1)在Microsoft Visual C++ 6.0开发平台上编写程序源代码,修改,增加功能,通过编译、连接,直到完全无误,最终执行程序,反复输入合理的以及不合理的数据进行测试并进一步完善。

(2)硬件:学校机房

(3)软件:Microsoft Visual C++ 6.0开发平台

第二章需求分析

2.1 问题描述

图书馆中的资料很多,如果能分类对其资料流通进行管理,将会带来很多方便,因此需要有一个媒体库管理系统。

图书馆共有三大类物品资料:图书、视频光盘、图画。

这三类物品共同具有的属性有:编号、标题、作者、评级(未评级,一般,成人,儿童)等。其中图书类增加出版社、ISBN号、页数等信息;视频光盘类增加出版社、ISBN 号、页数等信息;图画类增加出品国籍、作品的长和宽(以厘米计,整数)等信息。

2.2 功能要求

(1)基本功能

1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。

2)查询物品

可按照三种方式来查询物品,分别为:

✧按标题查询:输入标题,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”;

✧按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”;

✧按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”;

3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。

4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。

5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。

6)统计信息

输出当前物品库中总物品数,以及按物品类别,统计出当前物品中各类别的物品数并显示。例如:

总物品数 30

图书类 10

视频光盘类 15

图画类 5

7)物品存盘:将当前程序中的物品信息存入文件中。

8)读出物品:从文件中将物品信息读入程序。

(2)扩展功能

在完成以上基本功能的基础上,可自行进行扩展或完善,例如:1)可按物品编号进行排序。

2)使用二进制文件存储信息。

3)添加记录时,考虑各种数据的有效性。

4)组合查询功能的实现。

2.3 问题的解决方案

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

(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;

(2)分析系统中的各个实体及它们之间的关系;

(3)根据问题描述,设计系统的类层次;

(4)完成类层次中各个类的描述;

(5)完成类中各个成员函数的定义;

(6)完成系统的应用模块;

(7)功能调试;

(8)完成系统总结报告。

第三章系统设计

3.1 数据设计

3.1.1 类设计

***************************************************************************

基类:

*************************************************************************** class ziliao

{

protected:

int number;

char title[20];

char writer[20];

char level[20];

int tag; //资料删除标记

};

***************************************************************************

图书类:

*************************************************************************** class tushu:public ziliao //定义由ziliao类派生出tushu(图书)类

{

private:

char publish[20];

int ISBN;

int page;

public:

int getno() {return number;} //获取图书编号

char *gettitle() {return title;} //获取图书标题

void deltushu() {tag=1;} //删除图书

int gettag() {return tag;} //获取删除图画的标记

相关文档
最新文档