![C++课程设计商场库存货物管理系统_第1页](http://file3.renrendoc.com/fileroot_temp3/2021-12/29/ecfa1028-5341-4155-a0cb-f95b4273881d/ecfa1028-5341-4155-a0cb-f95b4273881d1.gif)
![C++课程设计商场库存货物管理系统_第2页](http://file3.renrendoc.com/fileroot_temp3/2021-12/29/ecfa1028-5341-4155-a0cb-f95b4273881d/ecfa1028-5341-4155-a0cb-f95b4273881d2.gif)
![C++课程设计商场库存货物管理系统_第3页](http://file3.renrendoc.com/fileroot_temp3/2021-12/29/ecfa1028-5341-4155-a0cb-f95b4273881d/ecfa1028-5341-4155-a0cb-f95b4273881d3.gif)
![C++课程设计商场库存货物管理系统_第4页](http://file3.renrendoc.com/fileroot_temp3/2021-12/29/ecfa1028-5341-4155-a0cb-f95b4273881d/ecfa1028-5341-4155-a0cb-f95b4273881d4.gif)
![C++课程设计商场库存货物管理系统_第5页](http://file3.renrendoc.com/fileroot_temp3/2021-12/29/ecfa1028-5341-4155-a0cb-f95b4273881d/ecfa1028-5341-4155-a0cb-f95b4273881d5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C+M程设计报告课题名称:商场库存货物管理系统老 导 姓学专班指2011 年6月目录1课程设计目的2项目要求与简介3系统分析3.1 系统模块图3.2 系统采用的关键(难点)技术3.3 主要类说明4测试运行的结果5心得体会6程序代码清单7参考书目一、课程设计目的通过设计一个较为简单的商场库存货物管理系统,进一步熟悉C+中类的概念、类的封装、继承的实现方式。了解系统开发的需求分析、类层次设计、模块分析、编码测试、 模块组装与整体调试的全过程,加深对C+的理解与Visual C+环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。二、项目要求与简介设计某公司的库存管理系统。此程序是为了更好的处
2、理货物的详细信息。包括货物的货物的入库、出库、查询、统计。并且能够很好的让使用者了解库存货物的有关信息。系统要求能够按编号显示、查找、增加、删除、和保存各类货物的信息。输入和输出货 物的有关信息并且对输入保存文件里确定程序至少具备以下功能:查询模块、增加模块、删除模块、货物的有关信息数据存盘等的基本模块。系统具有“货物的有关信息数据存盘”的功能,所以货物的有关信息数据可以保存到 磁盘文件,那么也就意味着今后可以从磁盘文件读出货物的有关信息,可以方便用户使用, 避免数据重复录入,考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名: date.dat 。作为一个完整的系统,除了具有增加货
3、物, 删除货物的信息模块, 还应该具有修改货物相关信息的功能,所以本系统具备了 “商品入库”、“商品出库”、“查询统计”、“商品报损”、“退出系统”,这 5个基本功能,就可以以最简捷的方式实现对货物的管理,也 就实现了系统的要求。三、系统分析1 .系统模块图2 .系统采用的关键(难点)技术 a.仓库管理员类class adminpublic:admin();private:string name;b.仓库货架类class shelfpublic: shelf(); private:admin men;/ 管理员string storeNo;/ 仓库编号 string kinds;/商品大类st
4、ring shelfNo;/ 货架号;3 .主要类说明使用面向对象的程序设计进行分析,整个系统涉及两大类可操作,仓库、商品。所以系 统主要涉及两大类:仓库类、商品类。系统框架就是仓库类和商品类的定义;主函数中定义 一个仓库对象,循环显示主菜单并根据用户选择调用仓库类的相应方法(成员函数)。考虑系统操作的货物信息具有不确定性,所以考虑使用链表保存、处理货物信息。仓库类包含:所有货物信息的一个不带头结点的链表及可以对货物信息进行增,改,删除,查询,数量设置,数据存盘等操作的相关模块为成员函数。所有货物都具有的公共信息及操作可以使用仓库类进行描述。由于系统具有3类货物且3类货物信息数据,操作基本相同
5、,所以可以为他们创立相同的类,并且采用继承和派生。四、测试运行的结果1.商场库存货物管理系统首页 耳场库存货物管理系统 ?帮品入库 2.商品出库 查询统计 4.商品报损 5,退出系统2.商品入库商品入库,请输入相关信息.=商品名称镜子商品介格,4商品数量:10仓库编号:e商品大类=生活用品货架编号二8该商品己经入库请按任意键继续. . 3.商品查询4.按商品名查询按商品名查询:输入商品名=牛妍商品名介格商品裁量仓库编号商品大类货架号卜奶2101食品M按任意犍继续. . . 5 .按商品价格查询按商品价格查询:输入价格=2商品名介格商品数量仓库编号商品大类货架号牛处2101食品面包2122食品请
6、按任意键继续. .,6 .按商品大类查询技商品大类查询: 输入大类名:食品商品名升格商品数量仓库编号商品大类货架号生炒N的1食品1面包2122食品2请按任意钳比警7 .商品报损商品报损,请输入要按预商品信息:商品名称:牛奶*想报损商品信息如下=,品名介格商品数量仓库编号商品大类货架号,奶2101食品1,些商品已酎员坏,请尽快从仓库中取出报损成功,花季已经更改”9请按任意微聘最.五、心得体会通过学生的分组设计,使学生能够基本掌握C+程序设计的方法,并且在此基础上掌握类的构造方法,明确类中构造函数、成员函数的建立以及调用,此外,并且,结合C+4,字符串函数的编译系统给定的库函数,采用一定的逻辑编译
7、,实现题目中要求的各项要求,达到基本实验母的,提高自己的c+骑言使用水平。六、程序代码清单/main.cpp#include <iostream>#include <string>#include <fstream>#include <cassert>#include <iomanip>#include <conio.h>using namespace std;/ 仓库管理员类class adminpublic: admin();private: string name;/ 仓库货架类class shelfpublic:s
8、helf();private:admin men;/ 管理员string storeNo;/仓库编号string kinds;/ 商品大类string shelfNo;/货架号;/electrical class class ele public: ele();private:商品名介格 所属货架商品数量string name;/ double price;/ shelf sh;/ long count;/ ;/ 管理 ( 组合类 ) class manapublic:mana();首页入库出库查询按商品名称查询按商品价格查询按大类查询商品报损char first_face();/ void
9、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;/ 介格count = 0;/ 商品数量 )/仓库货架类默认构造函数 shelf:shelf():men()
10、(store No = "xxx"/仓库编号kinds = "xxx"/ 商品大类 shelfNo = "xxx"/ 货架号 )/仓库管理员类admin:admin()(name = "xxx")/管理类默认构造函数mana:mana():aele(), ashelf(), abs()() char mana:first_face() system("cls");cout« endl;«end «end «end «end «end &
11、#171;end «end «end «end «end «end «end «end«"tt «"tt «"tt «"tt «"tt «"tt«"tt «"tt «"tt «"tt «"tt «"tt 商场库存货物管理系统 " 1.商品入库” " 2.商品出库” &q
12、uot; 3.查询统计 ” " 4.商品报损” " 5.退出系统”«endl «"tt«endl «endlreturn getch(); )cout «endl «"tt/ 入库void mana:in_storage()system("cls");string name;/ 商品名 double price;/介格string storeNo;/仓库编号string kinds;/商品大类string shelfNo;/货架号long count = 0; / 商品数量&
13、lt;< endl << endl ;cout << endl << " 商品入库,请输入相关信息cout << "t 商品名称 : "cin >> name;cout << endl << "t 商品介格 : "cin >> price;cout << endl << "t商品数量: "cin >> count;cout << endl << "t仓库编
14、号: "cin >> storeNo;cout << endl << "t商品大类: "cin >> kinds;cout << endl << "t货架编号: " ;cin >> shelfNo;ofstream storeFile("store.txt", ios:app);storeFile << setiosflags(ios:left) << setw(20) << name << &
15、quot; "<< setw(15) << price << " " << setw(10) << count << " "<< setw(10) << storeNo << " " << setw(20) << kinds << " "<< shelfNo << endl;storeFile.close();cout << e
16、ndl << endl << "t 该商品已经入库" << endl << endl << "t"system("pause");/ 出库void mana:out_storage()system("cls");string name;/ 商品名cout << endl << "t 商品出库,输入出库商品信息: " << endl << endl;cout << "t
17、 商品名称 : "cin >> name;ifstream storeFile("store.txt");if (!storeFile)ofstream storeFile1("store.txt");storeFile1.close();cout << endl << endl << "t 仓存为空 !" << endl << endl << "t"system("pause");return;boo
18、l flag = false;string namel;/商品名double pricel;/ 介格 string storeNol;/ 仓库编号 string kindsl;/商品大类string shelfNol;/ 货架号 long count1 = 0; /商品数量ofstream tempFile("temp.txt");while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1) if (na
19、me1=name)flag = true;elsetempFile << setiosflags(ios:left) << setw(20) << name1 << ""<< setw(15) << price1 << " " << setw(10) << count1 << ""<< setw(10) << storeNo1 << " " << s
20、etw(20) << kinds1 << " "<< shelfNo1 << endl;tempFile.close();storeFile.close();if (用ag)cout << endl << endl << "t仓库中没有这种商品!!"<< endl << endl << "t"system("pause");return;ofstream storeFile1("stor
21、e.txt");ifstream tempFile1("temp.txt");storeFile1 << tempFile1.rdbuf();storeFile1.close();tempFile1.close();cout << endl << "t这些商品已经出库,请仔细检查!" << endl << endl << "t"system("pause");/查询void mana:select_ele()while (1)syst
22、em("cls");cout << endl << endl;cout << "t="<< endl<< "t| |" << endl<< "t| 商 品查询 |" << endl<< "t| |" << endl<< "t| 1.按商品名称查询|" << endl<< "t| |" <<
23、endl<< "t| 2.按商品价格查询|" << endl<< "t| |" << endl<< "t| 3.按大类查询 |" << endl<< "t| |" << endl<< "t| 4. 返回 |" << endl<< "t| |" << endl<< "t=" << endl &
24、lt;< endl << "tt"char select = getch();switch (select)(case '1':select_name();break;case '2':select_price();break;case '3':select_kind();break;case '4':return;default:break;/按商品名称查询void mana:select_name()(一system("cls");cout << endl
25、<< "t按商品名查询:"<< endl << endl ;cout << "t输入商品名:"string name;cin >> name;string name1;/商品名double price1;/ 介格string storeNo1;/仓库编号string kinds1;/商品大类string shelfNo1;/ 货架号long count1 = 0; / 商品数量ifstream storeFile("store.txt");if (!storeFile)(co
26、ut << endl << endl << "t对不起,你白勺库存为空 !" << endl << endl << "t"system("pause");return;bool flag = false;cout << endl << " 商品名" << " 介格" << " 商品数量" << "仓库编号"<< &
27、quot;商品大类" << " 货架号"<< endl << endl;while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1)(if (name1 = name)(flag = true;cout« setiosflags(ios:left) « setw(15) « namel « ""
28、171; setw(10) « price 1 « "" « setw(10) « countl « "" « setw(10) « storeNol « "" « setw(15) « kindsl « « shelfNol « endl;)storeFile.closeQ;if(!flag)cout « endl « endl « "对不起,库存中没有这种商品!&
29、quot;cout« endl « endl;system("pause");)/按商品价格查询void mana:select_price()( -system("cls");cout« endl « "t按商品价格查询 :"<< endl « endl;cout« "t输入价格:double price;cin » price;string namel;/商品名double pricel;/ 介格 string storeNol;/ 仓库编
30、号 string kindsl;/商品大类string shelfNol;/ 货架号 long countl = 0; /商品数量ifstream storeFile("store.txt");if (istoreFile)(cout « endl « endl « "t对不起,你的库存为空 !" « endl « endl « "t"system("pause");return;)bool flag = false;cout« endl
31、71; " 商品名" << "介格” << "商品数量"« "仓库编号"<< "商品大类"« " 货架号"<< endl << endl;while (storeFile » namel » pricel » countl » storeNol » kindsl » shelfNol)(if (pricel = price)(flag = true
32、;cout« setiosflags(ios:left) « setw(15) « namel « ""« setw(10) « pricel « "" « setw(10) « countl « ""« setw(10) « storeNol « "" « setw(15) « kindsl « ""« shelfNol
33、171; endl;)storeFile.close();if(!flag)cout « endl « endl « " 对不起,库存中没有这个价格的商品!!";cout« endl « endl;system("pause");/按大类查询void mana:select_kind()( -system("cls");cout« endl « "t按商品大类查询 :"<< endl « endl;cout« &q
34、uot;t输入大类名:string kinds;cin » kinds;string namel;/商品名double pricel;/ 介格string storeNol;/ 仓库编号string kindsl;/商品大类string shelfNol;/ 货架号long countl = 0; /商品数量ifstream storeFile("store.txt");if (istoreFile) (cout « endl « endl « "t 对不起,你的库存为空 !" « endl «
35、 endl « "t" system("pause");return;)bool flag = false;cout« endl « " 商品名" << "介格"« " 商品数量"« "仓库编号"<< "商品大类"« " 货架号"<< endl << endl;while (storeFile » namel »
36、; pricel » countl » storeNol » kindsl » shelfNol)(if (kindsl = kinds)(flag = true;cout« setiosflags(ios:left) « setw(15) « namel « ""« setw(10) « pricel « "" « setw(10) « countl « ""« setw(10)
37、171; storeNol « "" « setw(15) « kindsl « ""« shelfNol « endl;) )storeFile.close();if(!flag)cout « endl « endl « "对不起,库存中没有这类商品!!";cout« endl « endl;system("pause");)/商品报损void mana:call_break()( -system(&qu
38、ot;cls");string name;/ 商品名cout« endl « "t商品报损,请输入要报损商品信息:"« endl « endl;cout« "t 商品名称: cin » name;ifstream storeFile("store.txt");if (!storeFile)(ofstream storeFile1("store.txt");storeFile1.close();cout << endl << endl
39、 << "t仓存为空!" << endl << endl << "t"system("pause");return;bool flag = false;string name1;/商品名double price1;/介格string kinds1;/商品大类string shelfNo1;/ 货架号long count1 = 0; / 商品数量ofstream tempFile("temp.txt");string storeNo1;/ 仓库疯号cout <&l
40、t; endl << endl << "你想报损商品信息如下:"<< endl << endl;cout << endl << " 商品名" << " 介格" << " 商品数量" << " 仓库编号"< < "商品大类" << " 货架号"<< endl << endl;while (storeFil
41、e >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1) (if (name1=name)(flag = true;cout << setiosflags(ios:left) << setw(15) << name1 << ""< < setw(10) << price1 << " " << setw(10) << count1 << ""< < setw(10) << storeNo1 << " " << setw(15) << kinds1 <&l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 度沙子运输合同范本
- 工地施工钢筋班组承包合同
- 游泳馆劳务承包合同常用范本
- 门面租赁合同简易范本
- 销售人员提成合同
- 物业管理的合作与协同
- 外籍人员雇佣合同
- 甲基转移酶SUV39H2促进前列腺癌增殖、侵袭和转移的机制研究
- 家具定制合约三篇
- 考虑两类冲击的退化系统的预防维修策略研究
- 逻辑思维训练500题(带答案)
- 人工智能大模型
- 极简统计学(中文版)
- 2024年资格考试-对外汉语教师资格证笔试参考题库含答案
- 2024年4月自考02382管理信息系统答案及评分参考
- (苏版)初三化学上册:第2单元课题1空气
- 2023年12月广东珠海市轨道交通局公开招聘工作人员1人笔试近6年高频考题难、易错点荟萃答案带详解附后
- 腹腔镜肾上腺肿瘤切除术查房护理课件
- 专题23平抛运动临界问题相遇问题类平抛运和斜抛运动
- 超声科医德医风制度内容
- 高三开学收心班会课件
评论
0/150
提交评论