C++超市管理系统的设计与实现.docx

上传人:b****3 文档编号:1488868 上传时间:2022-10-22 格式:DOCX 页数:23 大小:315.63KB
下载 相关 举报
C++超市管理系统的设计与实现.docx_第1页
第1页 / 共23页
C++超市管理系统的设计与实现.docx_第2页
第2页 / 共23页
C++超市管理系统的设计与实现.docx_第3页
第3页 / 共23页
C++超市管理系统的设计与实现.docx_第4页
第4页 / 共23页
C++超市管理系统的设计与实现.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

C++超市管理系统的设计与实现.docx

《C++超市管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《C++超市管理系统的设计与实现.docx(23页珍藏版)》请在冰豆网上搜索。

C++超市管理系统的设计与实现.docx

C++超市管理系统的设计与实现

 

 

1、需求分析

中小型超市采购的商品一般都成千上万件。

对这些商品进行有效的管理必不可少。

每件商品一般都需要记录商品名、条形码、类别、价格、出厂日期等商品的基本信息。

除此之外,还需要记录商品的其他相关信息,如生产厂家、供货处代码、厂家网址、厂家电话等。

超市商品的相关信息需要存储到文件系统中,一般都需要提供对商品信息的添加、编辑、删除等操作。

超市管理员每天都会记录购进的商品信息,核销过期的商品等。

 

为了巩固我们所学的C++语言程序设计知识,也为了满足课程设计的要求,我们在对几个中小型超市进行调研的基础上,设计和实现一个小型的超市商品管理系统,提供商品系统的添加、删除、编辑等功能。

同类系统多数使用结构体数组来操作数据,本系统使用链表结构操作数据,提高了数据处理的效率。

 

2、程序的主要功能

1、添加功能:

添加商品信息:

有商品代码、商品名称、产地、商品单价、库存量等。

2、删除功能:

根据商品的名称,在添加的商品中进行删除。

3、显示功能:

能将已经添加或者进行修改的商品信息进行显示。

4、修改功能:

根据商品的民称,在添加的商品中进行修改,将这个商品的所有信息都进行修改。

5、查找功能:

根据商品名称或者编号进行查找,查找功能有两个查找方式,以备不时之需。

6.文件保存

将添加,修改,删除后的商品信息进行保存。

 

3、程序运行平台

 

VC++6.0和DEVC++

 

4、系统总框架图

 

 

图片1

 

五、程序类的说明

本程序定义了两个类

Supermarket类

classSupermarket

{public:

charname[20];

charNum[20];

intCnum;

//进货总数

intMnum;

//销售数目

intEnum;

//剩余库存数目

doublePrice;

//单价

charAdd[20];

//产地

doubleSum;

//销售额

Supermarket*Next;

voidInput()

{

cout<<"\t\t请输入商品名:

";

cin>>name;

cout<<"\t\t请输入商品编号:

";

cin>>Num;

cout<<"\t\t请输入商品进货总数:

";

cin>>Cnum;

cout<<"\t\t请输入商品销售数目:

";

cin>>Mnum;

cout<<"\t\t请输入商品剩余库存数目:

";

cin>>Enum;

cout<<"\t\t请输入商品产地:

";

cin>>Add;

cout<<"\t\t请输入商品单价:

";

cin>>Price;Sum=Mnum*Price;

}

voidReadFile(istream&in)//文件指针

{

cin>>name>>Num>>Cnum>>Mnum>>Enum>>Add>>Price>>Sum;

}

voidShow()

{

cout<<"商品名:

"<

<<"商品编号:

"<

<<"进货总数:

"<

<<"销售数目:

"<

<<"剩余库存:

"<

<<"产地:

"<

<<"单价:

"<

<<"销售额:

"<

}};

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<<"添加成功!

"<

cout<<"输入任意字符!

继续……";

getch();

}

private:

Supermarket*Head,*End;

ifstreamin;

ofstreamout;

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;

}};

 

六、模块分析

 

模块分析表-1

函数

功能

VoidDisplay()

输出模块信息

Supermarket()

构造函数

~Supermarket()

析构函数

VoidAddItem()

增加商品

VoidRemoveItem()

删除商品

VoidModifyItem()

修改商品

Voidfind()

查找商品

IntListCount()

统计商品

Voidsave()

基础数据存盘

Supermarketmassage

构造函数

 

七、比较有特色的函数

 

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<<"商品名称:

"<name<<"\t\t"<<"商品编号:

"<Num<<"\t\t"

<<"进货总数:

"<Cnum<<"\t\t"<<"销售数目:

"<Mnum<<"\t\t"

<<"剩余库存:

"<Enum<<"\t\t"<<"商品产地:

"<Add<<"\t\t"

<<"商品单价:

"<Price<<"\t\t"<<"销售额:

"<Sum<<'\n';

out.close();

}

 

八、运行结果

1.运行界面

 

2.增加

4.显示

5.查找

6.删除

7.修改

8.保存

九、存在的不足与对策

于设计者水平有限及时间等方面的原因,该系统的功能比较简单,只有基础的功能,增删改查,我还添加了几个在我能力范围之内的应用,比如文件,还有就是统计,这些在我能力之内的内容,这个程序我真的把我所学的知识都用上了,所以还有很多待完善的地方,比如登陆界面的密码,还划分管理员与普通用户,这些都是我欠缺的知识,所以我希望在以后的学习中能学到更多的知识,弥补自己不足。

十、程序源代码

#include

#include//文件的使用

#include

#include//用getch();

usingnamespacestd;

classSupermarket//定义超市类

{

public:

charname[20];

charNum[20];

intCnum;

//进货总数

intMnum;

//销售数目

intEnum;

//剩余库存数目

doublePrice;

//单价

charAdd[20];

//产地

doubleSum;

//销售额

Supermarket*Next;

voidInput()

{

cout<<"\t\t请输入商品名:

";

cin>>name;

cout<<"\t\t请输入商品编号:

";

cin>>Num;

cout<<"\t\t请输入商品进货总数:

";

cin>>Cnum;

cout<<"\t\t请输入商品销售数目:

";

cin>>Mnum;

cout<<"\t\t请输入商品剩余库存数目:

";

cin>>Enum;

cout<<"\t\t请输入商品产地:

";

cin>>Add;

cout<<"\t\t请输入商品单价:

";

cin>>Price;

Su

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1