C++课程设计小型超市管理系统方案Word文件下载.docx
《C++课程设计小型超市管理系统方案Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++课程设计小型超市管理系统方案Word文件下载.docx(48页珍藏版)》请在冰点文库上搜索。
![C++课程设计小型超市管理系统方案Word文件下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/6a6830aa-73c4-479f-98af-0d6ac495c34f/6a6830aa-73c4-479f-98af-0d6ac495c34f1.gif)
要求在设计的过程中,建立清晰的类层次;
在系统的设计中,至少要用到面向对象的一种机制。
二、进度安排:
第1~3天:
查找资料,熟悉小型超市管理系统的设计原理,给出设计总体方案;
第4~6天:
各函数的详细设计;
第7~12天:
程序调试;
第13~14天:
写课程设计报告。
三、主要参考文献:
1.《c++语言程序设计(第四版)》——郑莉董渊何江舟编著
指导教师签字:
年月日
摘要·
·
1
1概述·
2
2设计方案简述·
3
2.1设计内容·
2.2设计目的与要求·
2.3系统分析与设计·
3详细设计·
12
3.1系统总体设计·
3.2源程序代码·
13
4运行结果·
28
5设计体会·
32
摘要
当代社会中伴随着计算机技术在各行各业日益广泛和深入的应用,超市对货品于职员的管理不在像过去一样靠手工去做,在一些超市管理中也开始信息化。
信息化的管理可以为超市节省大量人力物力,提高其运行效率,从而为顾客提供更好的服务,实现超市的业务提升。
本系统就是为了适应这种要求而设计的。
集信息的显示、输入、修改、删除、查询等各种处理为一体,信息维护起来非常方便。
大大减少了超市的人力和物力。
本系统大致要做到以下几点:
(1)
操作简便,节省大量人力;
(2)可以方便的进行货品管理,安全、高效;
(3)
可以迅速计算销售额和所买卖货品;
(4)
可以迅速查到所需信息,便于管理
1概述
1.1任务:
超市管理系统对职员商品信息进行高效简洁的管理,使之能正常高效的进行售卖活动。
系统充分考虑到超市管理系统对货物资料进行登记并处理。
考虑到进货、退货、库存预警、年月日销售额结算等多种特殊情况,同时可将相关资料进行有效处理。
1.2目标:
(2)可以方便的进行货品管理,安全、高效;
可以迅速查到所需信息,便于管理。
2.设计方案简述
2.1设计内容
设计一个简单的超市管理系统。
2.2设计目的与要求
2.2.1设计目的
达到熟练掌握C++语言的基本知识和技能;
基本掌握面向对象程序设计的基本思路和方法;
能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2.2.2设计要求
2.3系统分析与设计
2.3.1主要知识点
1)类,类内包含构造函数、成员函数、私有数据成员和某些输入输出函数;
2)运算符重载,定义一个重载运算符的函数,在需要执行被重载的运算符是,系统自动调用该函数;
3)继承与派生:
1.基类即父类,被继承的已有类;
2.派生类即子类,新建立的类;
3.这些类的定义和声明同类;
4.虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数。
2.3.2关键技术
1)程序共有四个头文件和四个源文件。
头文件Supermarket,包含增加Add,出售Sale和查询Search三个公有成员函数;
源文件Supermarket,增加函数,出售函数和查询函数的功能相似,选择功能,输出商品类型列表。
头文件Goods,在这个头文件中有四个类,一个基类和三个派生类。
基类Goods中设置增加AddGoods,出售SaleGoods,显示函数virtualShowMe。
同时定义统一的出售函数Sale。
保护成员包括,商品名称name[],商品数量number[]和商品分类的数量count。
派生类,日常用品类DailyGoods,食物Food和家电ElectricalAppliance,除了自身的无参构造函数,均从基类中继承增加AddGoods,出售SaleGoods,显示函数virtualShowMe,并根据课题要求加入运算符重载函数istreamoperator>
(istream&
in,DailyGoods&
d)。
同时借助函数Input_file和函数Save_file将商品信息输出并保存到文件中。
源文件Goods,实现各函数功能。
头文件diaplay,保存了小系统的基本页面和选择页面。
登录界面Loading,功能选择界面SelectMenu,商品功能列表GoodList和结束页面End。
源文件display,进行头文件的各项函数的功能实现。
头文件file,是关于文件的存储,打开和关闭的功能。
源文件main,实现功能的汇总和实现方式。
2)部分函数的实现
//Supermaket
*Add函数
intSupermarket:
:
Add()
{
intGood_num;
system("
cls"
);
GoodList();
//调用GoodList()函数语言
cout<
<
"
\t\t您要增加什么类型的商品?
;
cin>
Good_num;
returnGood_num;
}
*Sale函数
Sale()
\t\t您要出售什么类型的商品?
*Search函数
Search()
\t\t您想要查询什么类型的商品?
//Goods
voidGoods:
Sale()//统一定义商品出售函数功能模块
{
intflag=0;
stringgoods_name;
intgoods_number;
商品名称:
goods_name;
出售数量:
goods_number;
for(inti=0;
i<
count;
i++)//count在Goods.h中定义的保护成员
{
if(name[i]==goods_name)
{
if(number[i]<
goods_number)
{
flag=1;
cout<
endl<
\t\t∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞"
endl;
\t\t\t!
!
货存不足!
}
else
number[i]-=goods_number;
出售成功!
}
}
if(flag==0)
getchar();
cout<
\t\t\t没有该物品!
"
*AddGoods函数
voidDailyGoods:
AddGoods()//增加日常用品
intflag=1;
ShowMe();
\t\t>
请输入要增加日常用品的信息<
name[count];
商品数量:
number[count];
i++)
if(name[i]==name[count])//判断该物品是否已经存在
number[i]+=number[count];
flag=0;
if(flag)
count++;
//用于新增物品
添加商品成功!
voidFood:
AddGoods()//增加食品
≯≯≯≯≯≯≯≯≯≯≯≯≯≯≯请输入需要增加的食品信息≮≮≮≮≮≮≮≮≮≮≮≮≮≮≮"
商品名称:
i++)
{
if(name[i]==name[count])//判断该物品是否存在
{
number[i]+=number[count];
}
}
if(flag)
商品数量:
保质期:
SaveTime[count];
//用于新增物品
\t\t\t添加商品成功!
voidElectricalAppliance:
AddGoods()//增加家电
≯≯≯≯≯≯≯≯≯≯≯≯≯≯≯请输入要增加的家电的信息≮≮≮≮≮≮≮≮≮≮≮≮≮≮≮"
cout<
cin>
cin>
颜色:
color[count];
//用于新增物品
\t\t*************************************"
\t\t!
添加商品成功!
}
*SaleGoods函数
SaleGoods()//出售日常用品
≯≯≯≯≯≯≯≯≯≯≯≯≯≯≯请输入要出售的日常用品信息≮≮≮≮≮≮≮≮≮≮≮≮≮≮≮"
Sale();
//调用基类Goods里的Sale()函数
SaleGoods()//出售食品
~~~~~~~~~~~~~~~~~~~~~~~~请输入要出售的食品信息~~~~~~~~~~~~~~~~~~~~~~~~"
//调用基类Goods里的Sale函数
SaleGoods()//卖出家电
请输入要出售的家电信息>
*ShowMe函数
ShowMe()//显示日常用品
超市商品管理系统**日常用品区"
现有日常用品类商品库存:
【"
i+1<
】"
日常用品名称:
setiosflags(ios:
left)<
setw(15)<
name[i];
现存数量:
number[i]<
个"
-----------------------------------------------"
ShowMe()//显示食品信息
超市商品管理系统**食品区"
现有食品类商品库存:
食品名称:
//执行由有参数指定区域内的动作
setw(4)<
setw(8)<
千克"
//setw(n)设域宽为n个字符
保质期:
setw(3)<
SaveTime[i]<
天"
-----------------------------------------------------------"
ShowMe()//显示家电信息
超市商品管理系统**家电区"
现有家电类商品库存:
家电名称:
setw(6)<
台"
color[i]<
------------------------------------------------------------"
*文件的输入和保存函数
Input_file(ostream&
outfile)//将DailyGoods类商品信息打印到文件中
outfile<
outfile<
【"
voidDailyGoods:
Save_file(ostream&
Write_DailyGoods)//用于将DailyGoods商品信息单独保存到文件中
Write_DailyGoods<
count<
Write_DailyGoods<
name[i]<
outfile)//将Food类商品信息打印到文件中
Write_Food)//用于将Food商品信息保存到文件中
Write_Food<
Write_Food<
Input_file(ostream&
outfile)//将ElectricalAppliance类商品信息打印到文件中
现有家电类(ElectricalAppliance)商品库存:
{outfile<
Write_ElectricalAppliance)//用于将ElectricalAppliance商品信息保存到文件中
Write_ElectricalAppliance<
Write_ElectricalAppliance<
//Display函数
voidSelectMenu()//实现商品操作的列表
∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴超市商品管理系统∵∴∵∴∵∴∵∴∵∴∵"
\t可操作选项: