C++大程序

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1河南工业大学信息学院《面向对象程序设计》课程设计报告超市管理系统的设计与实现姓名:赫英明专业班级:软件工程1405学号:201416920622完成时间:2015年12月27日指导老师:王献荣2目录一、需求分析........................................................3二、程序的主要功能..................................................3三、程序运行平台....................................................4四、系统总框架图....................................................4五、程序类的说明....................................................5六、模块分析........................................................8七、比较有特色的函数................................................9八、运行结果.......................................................10九、存在的不足与对策...............................................15十、程序源代码.....................................................153一、需求分析中小型超市采购的商品一般都成千上万件。对这些商品进行有效的管理必不可少。每件商品一般都需要记录商品名、条形码、类别、价格、出厂日期等商品的基本信息。除此之外,还需要记录商品的其他相关信息,如生产厂家、供货处代码、厂家网址、厂家电话等。超市商品的相关信息需要存储到文件系统中,一般都需要提供对商品信息的添加、编辑、删除等操作。超市管理员每天都会记录购进的商品信息,核销过期的商品等。为了巩固我们所学的C++语言程序设计知识,也为了满足课程设计的要求,我们在对几个中小型超市进行调研的基础上,设计和实现一个小型的超市商品管理系统,提供商品系统的添加、删除、编辑等功能。同类系统多数使用结构体数组来操作数据,本系统使用链表结构操作数据,提高了数据处理的效率。二、程序的主要功能1、添加功能:添加商品信息:有商品代码、商品名称、产地、商品单价、库存量等。2、删除功能:根据商品的名称,在添加的商品中进行删除。3、显示功能:能将已经添加或者进行修改的商品信息进行显示。4、修改功能:根据商品的民称,在添加的商品中进行修改,将这个商品的所有信息都进行修改。5、查找功能:根据商品名称或者编号进行查找,查找功能有两个查找方式,以备不时之需。6.文件保存将添加,修改,删除后的商品信息进行保存。4三、程序运行平台VC++6.0和DEVC++四、系统总框架图图片1主函数添加信息删除信息清空信息修改信息显示信息查找信息5五、程序类的说明本程序定义了两个类Supermarket类classSupermarket{public:charname[20];charNum[20];intCnum;//进货总数intMnum;//销售数目intEnum;//剩余库存数目doublePrice;//单价charAdd[20];//产地doubleSum;//销售额Supermarket*Next;voidInput(){cout\t\t请输入商品名:;cinname;cout\t\t请输入商品编号:;cinNum;cout\t\t请输入商品进货总数:;cinCnum;cout\t\t请输入商品销售数目:;cinMnum;cout\t\t请输入商品剩余库存数目:;cinEnum;cout\t\t请输入商品产地:;cinAdd;cout\t\t请输入商品单价:;cinPrice;Sum=Mnum*Price;}voidReadFile(istream&in)//文件指针{cinnameNumCnumMnumEnumAddPriceSum;}6voidShow(){cout商品名:nameendl商品编号:Numendl进货总数:Cnumendl销售数目:Mnumendl剩余库存:Enumendl产地:Addendl单价:Priceendl销售额:Sumendlendl;}};Supermarketmassage类classSupermarketmassage{public:Supermarketmassage();~Supermarketmassage();voidShowMenu();voidFind();voidSave();voidModifyItem();voidRemoveItem();voidSwap(Supermarket*,Supermarket*);voidSort();//voidUnpass();intListCount();//voidAverage();voidDisplay(){for(Supermarket*p=Head-Next;p!=End;p=p-Next)p-Show();cout输入任意字符!继续……;getch();}voidAddItem(){End-Input();End-Next=newSupermarket;End=End-Next;cout添加成功!endl;cout输入任意字符!继续……;getch();}private:Supermarket*Head,*End;ifstreamin;ofstreamout;7Supermarket*FindItem(char*name){for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成功就返回空if(!strcmp(p-Next-name,name))returnp;returnNULL;}Supermarket*FindNum(char*Num){for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成功就返回空if(!strcmp(p-Next-Num,Num))returnp;returnNULL;}Supermarket*FindAdd(char*Add){for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成就返回空if(!strcmp(p-Next-Add,Add))returnp;returnNULL;}};8六、模块分析模块分析表-1函数功能VoidDisplay()输出模块信息Supermarket()构造函数~Supermarket()析构函数VoidAddItem()增加商品VoidRemoveItem()删除商品VoidModifyItem()修改商品Voidfind()查找商品IntListCount()统计商品Voidsave()基础数据存盘Supermarketmassage构造函数9七、比较有特色的函数Supermarket*FindItem(char*name)//按照姓名查找商品{for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成功就返回空if(!strcmp(p-Next-name,name))returnp;returnNULL;}Supermarket*FindNum(char*Num)//按照编号查找{for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成功就返回空if(!strcmp(p-Next-Num,Num))returnp;returnNULL;}Supermarket*FindAdd(char*Add){for(Supermarket*p=Head;p-Next!=End;p=p-Next)//匹配成功则返回上一个指针,不成就返回空if(!strcmp(p-Next-Add,Add))returnp;returnNULL;voidSupermarketmassage::Save(){out.open(sort.txt);for(Supermarket*p=Head-Next;p!=End;p=p-Next)out商品名称:p-name\t\t商品编号:p-Num\t\t进货总数:p-Cnum\t\t销售数目:p-Mnum\t\t剩余库存:p-Enum\t\t商品产地:p-Add\t\t商品单价:p-Price\t\t销售额:p-Sum'\n';out.close();}10八、运行结果1.运行界面2.增加114.显示5.查找126.删除137.修改148.保存15九、存在的不足与对策于设计者水平有限及时间等方面的原因,该系统的功能比较简单,只有基础的功能,增删改查,我还添加了几个在我能力范围之内的应用,比如文件,还有就是统计,这些在我能力之内的内容,这个程序我真的把我所学的知识都用上了,所以还有很多待完善的地方,比如登陆界面的密码,还划分管理员与普通用户,这些都是我欠缺的知识,所以我希望在以后的学习中能学到更多的知识,弥补自己不足。十、程序源代码#includeiostream#includefstream//文件的使用#includestring.h#includeconio.h//用getch();usingnamespacestd;classSupermarket//定义超市类{public:charname[20];charNum[20];intCnum;//进货总数intMnum;//销售数目intEnum;//剩余库存数目doublePrice;//单价charAdd[20];//产地doubleSum;//销售额Supermarket*Next;16voidInput(){cout\t\t请输入商品名:;cinname;cout\t\t请输入商品编号:;cinNum;cout\t\t请输入商品进货总数:;cinCnum;cout\t\t请输入商品销售数目:;cinMnum;cout\t\t请输入商品剩余库存数目:;cinEnum;cout\t\t请输入商品产地:;cinAdd;cout\t\t请输入商品单价:;cinPrice;Sum=Mnum*Price;}voidReadFile(istream&in)//文件指针{cinnameNumCnumMnumEnumAddPriceSum;}voidShow()//显示模块{cout商品名:nameendl商品编号:Numendl进货总数:Cnumendl销售数目:Mnumendl剩余库存:Enumendl产地:Addendl单价:Priceendl销售额:Sumendlendl;}};classSupermarketmassage//定义超市各功能模块类{public:17Supermarketmassage();~Superma

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功