




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录一、设计题目1二、设计目的1三、设计说明1四、总体设计2五、详细设计3六、结论6一、设计题目车辆仓库库存管理系统二、设计目的1. 通过课程设计掌握面向对象的程序设计思路。2. 通过课程设计掌握类的继承、抽象类、多态、虚基类的应用方法。3. 通过课程设计掌握C+中对文件进行查找、删除、修改等操作方法。三、设计说明1. 系统功能需求描述编程实现车辆仓库库存管理系,主要实现车辆仓库库存管理功能。其中车辆信息主要有车牌名,编码,型号,价格,数量。本系统应具有以下功能:(1)登录管理模块:主要实现登录身份的管理、密码管理。(2)车辆信息管理模块:商品信息的增、删、改、查。按条件显示车辆资料。(3)
2、 库存信息管理模块:进货、出货、损耗等库存修正。查找指定产品的数量。(4)统计管理模块:统计各型号车辆库存情况。2. 系统运行环境(1)硬件环境。本系统适用于那种Inter386以上计算机,内存容量为128M,应配备键盘、鼠标、显示器等外部设备。(2)软件环境。本系统的设计采用Visual C+6.0编写。在Windows XP SP2环境下测试通过。四、总体设计1. 数据设计(1) 类设计本程序只有一个车辆仓库类,该类的数据信息主要有车名name,编号num,型号type,价格price,数量quantity;有成员函数:void CreatTalble(CarDepot *p);创建表单函
3、数,void Write(CarDepot *p);操作函数,void Insert (CarDepot *p);插入数据函数,void Del(CarDepot *p);删除数据函数,voidRevise(CarDepot *p)修改数据函数,void Find(CarDepot *p);查询数据函数,void Print(CarDepot *p,int i);输出函数。(2)函数设计void CreatTable(CarDepot *p);创建一份表单,void Write(CarDepot *p);执行各项操作的跳转,void Insert (CarDepot *p); 插入数据,voi
4、d Del(CarDepot *p); 删除数据,voidRevise(CarDepot *p)修改数据,void Find(CarDepot *p);查询数据,并实现各项查找之间的跳转,void Print(CarDepot *p,int i);输出查询的信息,void adorn()实现界面的美化,void user()用户登陆管理。2. 结构设计 系统流程图如图4-1所示Main()函数 修改 数据 删除 数据 查询 数据 插入 数据 创建 表单void Del(CarDepot *p);voidRevise(CarDepot *p);void Print(CarDepot *p,int
5、 i);void Find(CarDepot *p);void Insert (CarDepot *p);void CreatTable(CarDepot *p);图4-1 系统流程图五、详细设计1. 界面设计(1)登陆界面图5-1 车辆厂库库存管理系统登陆界面该界面中密码的输入,如成功输入用户名和密码则可登陆系统,否则会要求用户不断的重新输入用户名和密码;选择创建表单时输入一条或多条信息创建一份表单;选择插入信息时可在文件中插入一条或多条信息;选择删除数据时可删除文件中不需要的数据;选择修改数据时可修改文件中需要修改的数据;选择查找数据是可在文件中查找数据并输出。2. 测试(2)创建表单界面
6、图5-2 成功创建表单界面(3)文件中创建表单图5-3 文件中创建表单(4)成功插入数据图5-4 成功插入数据(5)插入数据失败图 5-5 插入数据失败(6)成功删除数据图5-6 成功删除数据(7)删除数据失败图5-7 删除数据失败(8)成功修改数据图5-8成功修改数据(9)修改数据失败图5-9 修改数据失败(10)查找数据成功图5-10 查找数据成功六、结论本系统汇集了创建表单,插入数据,删除数据,修改数据,分类查询数据等功能,并能成功的判断文件中是否存在要插入,删除,修改,查询的数据,并根据查询的结果作出判断,以使文件中不会存在重复的数据,方便了用户的操作;编写程序运用了if语句,swit
7、ch语句,数据,类,goto语句等c+基本知识,是模板能够很好的链接在一起,功能更加完善。且此程序是在vc6.0中运行的,程序较稳定。附录(程序源代码):#include #include#include#include#include#include using namespace std;/*创建类*class CarDepotprivate:char name20;/*车名char num20;/*编号char type20;/*型号int quantity;/*数量int price;/*价格static int account;public:void CreatTable(CarDe
8、pot *p);void Write(CarDepot *p);void Insert(CarDepot *p);void Del(CarDepot *p);void Revise(CarDepot *p);void Find(CarDepot *p);void Print(CarDepot *p,int i);int CarDepot:account=0;/*创建表单*void CarDepot:CreatTable(CarDepot *p)int i;couti;for(int j=0;ji;j+)cout输入第account+j+1车的信息endl;coutpaccount+
9、;coutpaccount+j.num;coutpaccount+j.type;coutpaccount+j.price;coutpaccount+j.quantity;coutendlendl;account=account+i;fstream out(f1.txt,ios:out);/*打开文件for(j=0;jaccount;j+)setw(4)pj.numsetw(8)pj.type;outsetw(8)pj.pricesetw(8)pj.quantityendl;/*插入数据*void CarDepot:Insert(CarDepot *p)if(account1
10、00)char car20;cout请输入所要插入的信息的车名:car;;coutpaccount.num; coutpaccount.type;coutpaccount.price;coutpaccount.quantity;int s=0;/*标识 for(int j=0;jaccount;j+)/*判断文件中是否存在要插入的数据if(strcmp(,)=0 & strcmp(pj.num,paccount.num)=0& strcmp(pj.type,paccount.type)=0 & pj.price=pacc
11、ount.price & pj.quantity=paccount.quantity)cout插入失败endl;cout文件中存在要插入的数据endl;s=1;if(s=0)/*插入数据for(int j=0;j=account;j+)if(strcmp(,car)=0)CarDepot s; for(int i=j;j=account;j+)s=pj;pj=paccount;paccount=s;cout插入数据成功;fstream out(f1.txt,ios:out); for(j=0;j=account;j+)setw(4)pj.numsetw(8)p
12、j.type; outsetw(8)pj.pricesetw(8)pj.quantityendl;account+;/*删除数据*void CarDepot:Del(CarDepot *p) CarDepot del;cout请输入所要删除的数据:endl;;coutdel.num;coutdel.type;coutdel.price;coutdel.quantity;int s=0;/*标识for(int j=0;jaccount;j+)/*删除的数据if(strcmp(,)=0 & strcmp(pj.num,del.num)=0& s
13、trcmp(pj.type,del.type)=0 &pj.price=del.price &pj.quantity=del.quantity)for(int i=j;iaccount;i+)pi=pi+1;s=1;if(s=1)cout删除数据成功;else cout删除失败!不存在所要删除的数据;account-;fstream out(f1.txt,ios:out);for(j=0;jaccount;j+)setw(4)pj.numsetw(8)pj.type;outsetw(8)pj.pricesetw(8)pj.quantityendl;/*修改数据*void C
14、arDepot:Revise(CarDepot *p) CarDepot rev;cout请输入所要修改的数据:endl;;coutrev.num;coutrev.type;coutrev.price;coutrev.quantity;int s=0;/*标识for(int j=0;jaccount;j+)/*修改数据if(strcmp(,)=0)if(strcmp(pj.num,rev.num)=0)if(strcmp(pj.type,rev.type)=0)if(pj.price=rev.price)if(pj.quantity=rev
15、.quantity)cout请输入所要修改后的数据:endl; ; coutpj.num; coutpj.type; coutpj.quantity;s=1;if(s=1)cout修改数据成功;else cout修改失败!不存在所要修改的数据;account-;fstream out(f1.txt,ios:out);for(j=0;jaccount;j+)setw(4)pj.numsetw(8)pj.type;outsetw(8)pj.pricesetw(8)pj.quantityendl;/*查询数据*void CarDepot:Find(CarDe
16、pot *p)char f;coutt查找的方式endl;couttt1.按车名查找 tendl;couttt2.按编号查找 tendl;couttt3.按型号查找 tendl;couttt4.按价格查找 tendl;couttt5.按数量查找tendl;coutt请输入操作(15)f;switch(f)case1:Print(p,1);break;case2:Print(p,2);break;case3:Print(p,3);break;case4:Print(p,4);break;case5:Print(p,5);break;/*查找输出*void CarDepot:Print(CarDe
17、pot *p,int i)if(i=1) char c20;int s=0;coutc;for(int j=0;jaccount;j+)if(strcmp(,c)=0)cout您所查询的数据为:endl;cout车名:endl;cout编号:pj.numendl;cout类型:pj.typeendl;cout价格:pj.priceendl;cout数量:pj.quantityendl;s=1;if(s=1)cout查询数据成功;else cout查询失败!不存在所要查询数据;else if(i=2)char c20;coutc; int s=0;for(int j=
18、0;jaccount;j+)if(strcmp(pj.num,c)=0)cout您所查询的数据为:endl;cout车名:endl;cout编号:pj.numendl;cout类型:pj.typeendl;cout价格:pj.priceendl;cout数量:pj.quantityendl;s=1;if(s=1)cout查询数据成功;else cout查询失败!不存在所要查询数据;else if(i=3)char c20;coutc;int s;for(int j=0;jaccount;j+)if(strcmp(pj.type,c)=0)cout您所查询的数据为:endl;cou
19、t车名:endl;cout编号:pj.numendl;cout类型:pj.typeendl;cout价格:pj.priceendl;cout数量:pj.quantityendl;s=1;if(s=1) cout查询数据成功;else cout查询失败!不存在所要查询数据;else if(i=4)int c;coutc;int s=0;for(int j=0;jaccount;j+)if(pj.price=c)cout您所查询的数据为:endl; cout车名:endl; cout编号:pj.numendl; cout类型:pj.typeendl; cout价格:pj
20、.priceendl; cout数量:pj.quantityendl;s=1;if(s=1)cout查询数据成功; else cout查询失败!不存在所要查询数据;else if(i=5)int c;coutc;int s=0;for(int j=0;jaccount;j+)if(pj.quantity=c)cout您所查询的数据为:endl; cout车名:endl; cout编号:pj.numendl; cout类型:pj.typeendl; cout价格:pj.quantityendl;s=1;if(s=1)cout查询数据成功; else cout查询失败!不存在所要查询数据;Write(p);/*美化界面*void adorn()coutendlendl;coutt系统操作endl;couttt 1.创建表单 tendl;couttt 2.插入数据 tendl;couttt 3.删除数据 tendl;couttt 4.修改数据 tendl;couttt 5.查找数据 te
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行与管委会合作协议
- 民宿营销活动方案
- 机场航线资源共享协议
- 交易合同保密协议
- 草皮采购施工合同
- 店铺商铺房屋租赁合同
- 产品推广策略与技术方案介绍手册
- 工程合同付款方式范本5篇
- 租金链上支付智能合约协议
- Unit 9 Can you come to my party Section A 2a - 2d 教学设计 2024-2025学年人教版英语八年级上册
- 2024年达州市总工会招聘工会社会工作者笔试真题
- 2025至2030年中国肌酸数据监测研究报告
- 1.2 读懂彼此的心 第二课时 课件 2024-2025学年五年级下册道德与法治 统编版
- 2025年度电视产品进出口贸易合同4篇
- AQ 1083-2011 煤矿建设安全规范 (正式版)
- 大班-数学-分礼物-课件(互动版)
- 2024年山东力明科技职业学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 2023年新改版教科版四年级下册科学练习题(一课一练+单元+期中+期末)
- 综合布线验收报告材料
- 《初三心理健康教育》ppt课件
- 重庆铁塔公司配套设备安装施工服务技术规范书
评论
0/150
提交评论