C++课程设计仓库管理系统报告

上传人:我*** 文档编号:129485972 上传时间:2020-04-23 格式:DOC 页数:26 大小:278.50KB
返回 下载 相关 举报
C++课程设计仓库管理系统报告_第1页
第1页 / 共26页
C++课程设计仓库管理系统报告_第2页
第2页 / 共26页
C++课程设计仓库管理系统报告_第3页
第3页 / 共26页
C++课程设计仓库管理系统报告_第4页
第4页 / 共26页
C++课程设计仓库管理系统报告_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《C++课程设计仓库管理系统报告》由会员分享,可在线阅读,更多相关《C++课程设计仓库管理系统报告(26页珍藏版)》请在金锄头文库上搜索。

1、目 录第一章、设计题目1第二章、问题分析22.1问题描述22.2需求分析2第三章、总体设计41、功能分析42、数据抽象43、结构关系4第四章、详细设计6一、头文件定义6二、仓库管理员类6三、仓库货架类6四、电器类6五、管理组合类7六、仓库电器类默认构造函数7七、仓库货架类默认构造函数7八、仓库管理员类默认构造函数8九、仓库管理组合类默认构造函数8第五章、功能测试9一、录入、保存、显示、读取测试:9二、运行界面:13小结14参考文献15致谢15附录:源代码清单16第一章、设计题目 仓库管理程序功能设计:1建立文件(1)存储文件可以使用默认文件名或指定文件名。(2)可以不保存输出记录,但需要确认是

2、否保存输入记录。(3)如果已经有文件,只能在其后追加。(4)新增的记录继续存入原文件中。2文件的存取和显示(1)可以单独存取文件。(2)可以随时显示内存中记录的全部内容。(3)可以直接存取指定文件3删除记录(1)可以按“商品名称”方式删除(报损)并且将记录修改更新。(2)能给出被删除记录的信息。(3)如果库存已经是空的,删除(报损)时应给出提示信息并返回主菜单。(4)如果没有要删除的这个商品信息,输出没有找到的提示信息(5)删除操作仅限于内存,只有执行存记录操作时,才能覆盖原记录。4查询记录(1)可以按“商品名称”、“商品价格”或“商品种类”三种方式查询记录。(2)能给出查询记录的信息。(3)

3、如果查询的信息不存在,输出“没有找到”的信息。5、使用菜单实现功能的正确选择6、测试程序(1)应列出测试大纲对程序进行测试(2)应保证测试用例能测试到程序的各种边缘情况。编写此程序至少要用二个以上的下列面向对象工具:类继承与派生友元函数构造函数虚函数模板文件输入输出通过设计一个较为简单的商场库存货物管理系统,进一步熟悉C+中类的概念、类的封装、继承的实现方式。了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C+的理解与Visual C+环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。第二章、问题分析2.1问题描述随着二十一世纪的到来,计算机已

4、成为一块极其活跃的、崇尚发展与创新的领地,并成为我们这一时代决定性的先驱技术。计算机是现代文化不可或缺的级成部分,是现代科学技术发展的先导,并成为世界经济巨量增长的根本引擎。C语言和C+语言是当今世界最流行的两种计算机语言,倍受人们的喜欢。许多著名的系统软件, 如DBASE PLUS、DBASE 都是由C 语言编写的。用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了, 像PC- DOS 、WORDSTAR等就是用这种方法编写的。归纳起来C 语言具有如下特点:1、C 语言简洁、紧凑,使用方便、灵活。有32个关键字。2、运算符丰富。共有34种运算符。3、数据结构丰富,具有现代化语言的

5、各种数据结构。 4、具有结构化的控制语句。5、语法限制不太严格,程序设计自由度大。 6、C 语言允许直接访问物理地址,能进位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 7、生成目标代码质量高,程序执行效率高。 8、用C语言写的程序可移植性好(与汇编语言比)。C+语言是在C语言的基础上扩展而成的,它保留了C语言原有的所有优点,增加了面向对象的机制。所以C+与C完全兼容。C+是对C的扩充,是C的超集。它既可用于结构化程序设计,又可用于面向对象的程序设计,功能强大。C+中加入了面向对对象程序设计。C+的多继承机制能更好地描述对象的属性和行为,它的特点是面向对象程序设计。C+

6、实现了类的封装、数据隐藏、继承及多态,它还支持模板、操作符重载、内联函数定义、预处理、宏、全局静态类变量、嵌套类定义等等,使得其代码容易维护及高度可重用。本课程设计要求的功能如下:1、建立文件:存储文件可以使用默认文件名或指定文件名 可以不保存输出记录,需要确认是否保存输入记录 如果已经有文件,只能在其后追加2、文件存取和显示:可以单独存取文件,可以随时显示内存中记录的全部内容 可以直接存取默认文件或指定文件3、删除记录:可以按“商品名称”方式删除记录并更新内存链表内容4、查询记录:可以按“商品名称”、“商品价格”或“商品种类”三种方式查询记录2.2 需求分析根据题目要求,做出如下的具体分析:

7、一继承是面向对象语言的重要特征之一,它是指从一个或多个基类中继承数据和操作,形成新的派生类的一种机制。该机制自动地为一个类提供来自另一个类的操作和数据,使程序员只需在新类中定义已有类中所没有的成分。在C+中有两种继承:单一继承和多重继承。当一个派生类仅由一个基类派生时,称为单一继承;而当一个派生类由一个以上的基类派生时,称为多重继承。继承不仅简化了程序设计方法,显著提高了软件的重用性,而且还使程序具有一种层次结构,使之变得更容易维护。二类是构成面向对象系统的最基本的单位,是面向对象系统中最基本的概念之一。类是创建对象的模板,以操作、表示和算法的形式完整地定义了一组对象的行为,被认为是一种用户自

8、定义的数据类型,它完整地描述了规范说明和实现。类可以作为面向对象系统的具有特定功能一个模块,可以作为模块划分的一种手段和依据。类还是代码共享的手段。三输入/输出是指程序与计算机的外部设备之间所进行的信息交换。在C+中提供了输入/输出流库。C+的流库是一个较复杂的标准类库,它是用继承的方法建立起来的实用流库,不仅提供了与C语言标准函数类似的各种I/O操作功能,更重要的是使I/O操作具有面向对象的特征,功能更灵活,更强大。四标准模板库STLC+的标准类库STL是C+语言标准库的一个重要组成部分,利用类库来开发的应用软件,有利于减少源程序中的BUG,提高软件的正确性。它通常具有以下的特点:1、通用性

9、2、可扩充性3、概念性与层次性4、灵活性五项目要求与简介此程序是为了更好的处理货物的详细信息。包括货物的货物的入库、出库、查询、统计。并且能够很好的让使用者了解库存货物的有关信息。系统要求能够按编号显示、查找、增加、删除、和保存各类货物的信息。输入和输出货物的有关信息并且对输入保存文件里确定程序至少具备以下功能:查询模块、增加模块、删除模块、货物的有关信息数据存盘等的基本模块。 系统具有“货物的有关信息数据存盘”的功能,所以货物的有关信息数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出货物的有关信息,可以方便用户使用,避免数据重复录入,考虑到系统实现简洁,货物数据文件采用文本文件,

10、货物数据文件名:date.dat。作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能, 所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品报损”、“退出系统”,这5个基本功能,就可以以最简捷的方式实现对货物的管理,也就实现了系统的要求。第三章、总体设计1、功能分析使用面向对象的程序设计进行分析,整个系统涉及两大类可操作,仓库、商品。所以系统主要涉及两大类:仓库类、商品类。系统框架就是仓库类和商品类的定义;主函数中定义一个仓库对象,循环显示主菜单并根据用户选择调用仓库类的相应方法(成员函数)。考虑系统操作的货物信息具有不确定性,所以考虑使用链

11、表保存、处理货物信息。仓库类包含:所有货物信息的一个不带头结点的链表及可以对货物信息进行增,改,删除,查询,数量设置,数据存盘等操作的相关模块为成员函数。所有货物都具有的公共信息及操作可以使用仓库类进行描述。由于系统具有3类货物且3类货物信息数据,操作基本相同,所以可以为他们创立相同的类,并且采用继承和派生。2、数据抽象a.仓库管理员类class adminpublic:admin();private:string name;b.仓库货架类class shelfpublic:shelf();private:admin men;/管理员string storeNo;/仓库编号string kin

12、ds;/商品大类string shelfNo;/货架号;3、结构关系3.1主系统块:仓库管理系统商品入库商品报损查询统计退出系统商品出库3.2商品入库块:商品入库商品名称仓库编号商品价格商品数量商品大类货架编号3.3商品出库块:商品出库商品名称仓库编号商品价格商品数量商品大类货架编号3.4查询统计块: 3.5商品报损块:查询统计查询统计输入报损商品名称按大类按价格按名称商品报损成功或不成功3.6退出系统块:退出系统谢谢使用第四章、详细设计一、头文件定义#include #include #include #include #include #include using namespace st

13、d;二、仓库管理员类class adminpublic:admin();private:string name;三、仓库货架类class shelfpublic:shelf();private:admin men;/管理员string storeNo;/仓库编号string kinds;/商品大类string shelfNo;/货架号;四、电器类class elepublic:ele();private:string name;/商品名double price;/价格shelf sh;/所属货架long count;/商品数量;五、管理组合类class manapublic:mana();char first_face();/首页void in_storage();/入库void out_storage();/ 出库void select_ele();/查询void select_name();/按商品名称查询void select_price();/按商品价格查询void select_kind();/按大类查询void call_break();/商品报损private:ele aele;shelf ashelf;admin abs;六、仓库电器类默认构造函数ele:ele():sh()name=xxx;/商品名price=0.0;/价格

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号