欢迎来到天天文库
浏览记录
ID:20173510
大小:284.50 KB
页数:16页
时间:2018-10-10
《超市现存货物管理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、课程设计题目:超市管理系统学生姓名:学院:信息数理学院专业班级:学号:指导教师:设计时间:2014年12月29日~2015年1月8日目录一、课程设计目的二、课程设计的要求三、设计思路及流程图四、功能函数的作用五、源代码六、程序截图七、心得总结一、课程设计目的:本课程设计是在大学本科二年级上学期,学完《面向对象程序设计(C++语言)》课程之后,进行的一项综合课程设计:1.理解“面向对象程序设计”的思想方法和知识点2.强化对于面向对象程序设计方法的理解与实践3.巩固和加深学生对C++语言课程的基本知识的理解和掌握4.掌握面向对象的抽象性、封装性、继承性和多态性等重要特点二、课程设
2、计要求:1.基于面向对象的抽象性、封装性、继承性和多态性等重要特点,逐级设计相关超市货品的属性,包括:货号,货名,型号,进货价,库存量,经办人。例如超市货品分为生活用品、小家电、常见食品等等。2.具体要求:(1)主菜单设计(2)记录输入:对每一个货物的货号、货名、型号、进货价、库存量、经办人,进行输入并存储在数据文件中。(3)显示记录:以列表方式显示全部记录(4)维护记录。能够实现添加、删除、修改货物记录,结果存储到文件中。修改纪录可以对任意记录的数据进行修改并在修改前后对记录内容进行显示;删除记录可以删除文件中的任意一个纪录。(5)查询记录。根据货号、货名、型号、经办人等查
3、询货物的信息。如:根据货号显示一种货物的记录;根据货名显示记录;根据经办人显示其所有经办的货物,可能有多种货物。(6)统计记录。计算每种货物的总价值,并以列表的方式显示;计算某经办人的经办货物数量。(7)设计货物数据记录,基本与实践情况相似,记录数不少于10条,能反应以上所有要求。三、设计思路及流程图首先,先建立一个超市的基类,在基类中定义一个公有的接口,稍后定义一个派生类并在派生类中对基类的虚函数进行功能实现。1.在派生类中所具有的功能包括:(1)添加商品(2)查询商品(3)修改商品(4)统计商品(5)删除商品2.各个功能划分的的子功能:(1)添加函数区分为不同类别储存(2
4、)查询函数分为按查询码查询,和按操作人查询(3)修改函数可有多种修改方式(4)统计分为按查询码统计和按类别统计,以及全部输出(5)进行了+的重载(6)运用flag标识符来辨别类的区别(7)运用C++文件流进行文件存储主流程图:统计的流程图:修改流程图:四、源代码1、基类classSupmarket//定义纯虚函数接口{public:virtualvoidAdd()=0;//增加商品virtualvoidAdd_up()=0;//统计商品virtualvoidDelete()=0;//删除商品virtualvoidChange()=0;//修改商品virtualvoidSear
5、ch()=0;//查询商品};classGoods:publicSupmarket//派生类{protected:intflag;chargoods_name[50];//商品名称doublegoods_number;//商品查询货号chargoods_type[50];//商品型号charperson_name[30];//经办人intprice;//进货价doubleamount;//库存量staticintcount;public:voidsetdata();voidShowData();voidAdd();//增加商品voidAdd_up();//统计商品voidDe
6、lete();//删除商品voidChange();//修改商品voidSearch();//查询商品frienddoubleoperator+(constdouble&i,constGoods&d);//重载+号Goods(){flag=0;goods_name[0]=' ';goods_number=0;goods_type[0]=' ';person_name[0]=' ';price=0;amount=0;}};intGoods::count=0;加号的重载:doubleoperator+(constdouble&i,constGoods&d){returni+
7、d.amount*d.price;}应用if(temp.flag==1){cout<<"该商品为商品基类:"<Add();break;case'2':p->Delete();break;case'3':p->Change();b
此文档下载收益归作者所有