您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 仓库管理系统C++课程设计报告
《高级语言程序设计》课程设计报告设计题目图书管理系统专业计算机科学与技术班级姓名学号2007年6月5日共19页2页2目录1.设计目的…………………………………………………32.设计思想…………………………………………………33.类及对象设计……………………………………………44.程序源代码………………………………………………55.调试记录…………………………………………………166.总结………………………………………………………18共19页3页3仓库管理系统1.设计目的通过实习进一步掌握所学的基本知识,学会解决实际问题的方法2设计题目1、问题描述(功能要求):某公司现有以下设备:普通电视机、DVD、带DVD的电视机,带DVD的电视机的售价为普通电视机和DVD单价之和的80%,要求对所有的库存设备都能按照品名进行显示、查找、增加和删除、保存的功能。2、问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤:(1)分析系统中的各个实体之间的关系及其属性和行为;(2)根据问题描述,设计系统的类层次;(3)完成类层次中各个类的描述(包括属性和方法);(4)完成类中各个成员函数的定义;(5)完成系统的应用模块;(6)功能调试;(7)完成系统总结报告以及系统使用说明书。2.设计思想(1)设计classadmin管理库,实现对仓库信息的描叙;classshelf柜台类库实现建立电器资料;classele电器类,实现对电器的描述,电器的编号,货架号,名称,数量,价格等;classmana函数类,实现对电器的入库,查找,出库等。以下是函数功能表:函数功能charfirst_face()获取首页voidshow_storage()显示储存信息voidin_storage()电器入库voidout_storage()电器出库voidselect_ele()查询电器信息voidselect_name()按电器名查询voidselect_price()按电器价格查询voidcall_s()商品保存(2)用类的成员函数对链表的数据进行操作,其功能如上表所列。共19页4页4(3)设计菜单来实现功能设计1、输入商品2、商品查找3、查询入库4、商品出库5、退出系统3.设计类及对象(1)本程序定义了四个类,定义如下:classadmin{public:admin();private:stringname;};classshelf{public:shelf();private:stringstoreNo;//仓库编号stringshelfNo;adminwe;//货架号};classele{public:ele();private:stringname;//商品名doubleprice;//介格shelfsh;//所属货架longcount;//商品数量};classmana{public:mana();charfirst_face();//首页voidshow_storage();//显示voidin_storage();//入库共19页5页5voidout_storage();//出库voidselect_ele();//查询voidselect_name();//按商品名称查询voidselect_price();//按商品价格查询voidcall_s();//商品保存voidshow_storage1();private:adminabs;eleaele;shelfashelf;};ele::ele():sh(){name=xxx;//商品名price=0.0;//介格count=0;//商品数量}(2)分别利用类classadmin、classshelf、classele、classmana定义了各自的对象adminabs、shelfsh;eleaele;对其函数进行调用实现各种功能。(3)主函数实现,调用各种函数。4.程序源代码#includeiostream#includestring#includefstream#includeiomanip#includeconio.husingnamespacestd;classadmin{public:admin();private:stringname;};classshelf{public:shelf();private:stringstoreNo;//仓库编号共19页6页6stringshelfNo;adminwe;//货架号};classele{public:ele();private:stringname;//商品名doubleprice;//介格shelfsh;//所属货架longcount;//商品数量};classmana{public:mana();charfirst_face();//首页voidshow_storage();//显示voidin_storage();//入库voidout_storage();//出库voidselect_ele();//查询voidselect_name();//按商品名称查询voidselect_price();//按商品价格查询voidcall_s();//商品保存voidshow_storage1();private:adminabs;eleaele;shelfashelf;};ele::ele():sh(){name=xxx;//商品名price=0.0;//介格count=0;//商品数量}shelf::shelf():we(){storeNo=xxx;//仓库编号shelfNo=xxx;;//货架号共19页7页7}admin::admin(){name=xxx;}mana::mana():aele(),ashelf(),abs(){}charmana::first_face(){system(cls);coutendl;coutendl\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆endl\t\t◆◆endl\t\t◆公司库存货物管理系统◆endl\t\t◆◆endl\t\t◆1.输入商品◆endl\t\t◆◆endl\t\t◆2.商品查找◆endl\t\t◆◆endl\t\t◆3.查询入库◆endl\t\t◆◆endl\t\t◆4.商品出库◆endl\t\t◆◆endl\t\t◆5.退出系统◆endl\t\t◆◆endl\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆endlendl\t\t;returngetch();}voidmana::in_storage(){system(cls);stringname;//商品名doubleprice;//介格stringstoreNo;//仓库编号stringkinds;//商品大类stringshelfNo;//货架号longcount=0;//商品数量coutendl商品入库,请输入相关信息:endlendl;cout\t商品名称:;共19页8页8cinname;coutendl\t商品介格:;cinprice;coutendl\t商品数量:;cincount;coutendl\t仓库编号:;cinstoreNo;coutendl\t货架编号:;cinshelfNo;ofstreamstoreFile(store.txt,ios::app);storeFilesetiosflags(ios::left)setw(20)namesetw(15)pricesetw(10)countsetw(10)storeNoshelfNoendl;storeFile.close();coutendlendl\t该商品已经入库.......endlendl\t;system(pause);}voidmana::show_storage(){boolflag2=false;stringname2;//商品名doubleprice2;//介格stringstoreNo2;//仓库编号stringshelfNo2;//货架号longcount2=0;//商品数量ifstreamshowFile(store.txt);if(!showFile){cout\t对不起,你的库存为空!!!endlendl\t;system(pause);return;}coutendl商品名价格商品数量仓库编号货架号endlendl;while(showFilename2price2count2storeNo2shelfNo2){coutsetiosflags(ios::left)setw(10)name2setw(10)price2setw(10)count2setw(10)storeNo2shelfNo2endl;}共19页9页9showFile.close();getchar();}voidmana::out_storage(){system(cls);stringname;//商品名coutendl\t商品出库,输入出库商品信息:endlendl;cout\t商品名称:;cinname;ifstreamstoreFile(store.txt);if(!storeFile){ofstreamstoreFile1(store.txt);storeFile1.close();coutendlendl\t仓存为空!!!!endlendl\t;system(pause);return;}boolflag=false;stringname1;//商品名doubleprice1;//介格stringstoreNo1;//仓库编号stringshelfNo1;//货架号longcount2;longcount1=0;//商品数量ofstreamtempFile(temp.txt);while(storeFilename1price1count1storeNo1shelfNo1){if(name1==name)flag=true;while(name1==name){cout\t请输入要取出的商品数量:;cincount2;count1=count1-count2;break;}tempFilesetiosflags(ios::left)setw(10)name1setw(15)price1setw(10)count1setw(10)storeNo1setw(10)shelfNo1endl;}共19页10页10tempFile.close();storeFile.close();if(!flag){coutendlendl\t仓库中没有这种商品!!!endlendl\t;system(pause);return;}ofstreamstoreFile1(store.txt);ifstreamtempFile1(temp.txt);storeFile1tempFile1.rdbuf();storeFile1.close();tempFile1.close();coutendl\t这些商品已经出库,请仔细检查!!!endlendl\t;system(pause);}//查询voidmana::select_ele(){while(1){system(cls);coutendl
本文标题:仓库管理系统C++课程设计报告
链接地址:https://www.777doc.com/doc-3915284 .html