C++餐厅管理系统文档格式.docx
《C++餐厅管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《C++餐厅管理系统文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
返回sort
主函数main的运行流程图:
二、测试结果
首页:
菜的信息:
按类查找:
炒菜
炒饭
面类
点菜
增加点菜:
删除点菜:
计算消费金额:
1、没有拥有优惠卷
2、拥有优惠卷:
a)20元的优惠卷
b)0.85折优惠卷
退出系统:
三、结论及需改进的问题
餐厅点菜系统是在图书管理系统的基础上,慢慢自己改进的,其中增加点菜,删除点菜,输出菜单,按类查询都是按照图书管理系统中增加图书,删除图书,显示图书,按类查询中改进的,其中最重要的是菜单的录用,自己想了很多方法,最后用文本输入函数做的,把菜单完全的输入进去,还有一点新颖的地方,源于优惠劵的使用,不仅可以使用金额的优惠,并且还会使用打折卷的优惠,虽然这里面的算法很简单,但是增加的程序的实用性。
我感觉不足的是,应该有一个会进人后台的功能,进去可以增加菜单里的菜,删除菜,更改类别和金额,更方便餐厅的管理者,当然进人的时候,加入管理员密码。
餐厅点菜系统C++代码
#include<
iostream>
#include<
iomanip>
fstream>
string>
usingnamespacestd;
classCmenu//创建Cmenu类菜的属性
{
intnum;
//菜的编号
stringname;
//菜名
floatprice;
//菜的单价
stringkind;
//菜的种类
intsort;
//菜的数量
public:
voidgetnum(inti);
//录入菜的编号
voidgetname(stringName);
//录入菜的名字
voidgetprice(floatPrice);
//录入菜的单价
voidgetkind(stringKind);
//录入菜的类别
voidgetsort(intSORT);
//录入所点菜的数量
voidmenudisplay();
//菜谱显示
voidselectdisplay();
//对所点的菜进行输出
floatreturnnum()//返回菜的编号
{returnnum;
}
stringreturnname()//返回菜名
{returnname;
floatreturnprice()//返回菜的单价
{returnprice;
stringreturnkind()//返回菜的类别
{returnkind;
intreturnsort()//返回菜的数量
{returnsort;
};
voidCmenu:
:
getnum(inti)//录入菜的编号函数
num=i;
}
getname(stringName)//录入菜的名字
name=Name;
getprice(floatPrice)//录入菜的单价
price=Price;
getkind(stringKind)//录入菜的类别
kind=Kind;
getsort(intSORT)//录入所点菜的数量
sort=SORT;
menudisplay()//菜单的信息显示
{
cout<
<
setw(3)<
num<
setw(22)<
name<
setw(16)<
kind<
price<
endl;
selectdisplay()//对所点的菜进行输出
setw(24)<
setw(19)<
sort<
floatyouhui(floatsum,floatpoint)//函数计算有优惠卷时的价格
if(point>
1.0)
{
sum=sum-point;
}
if(point<
=1.0)
{
sum=sum*point;
returnsum;
classarray//创建一个array数组
voidgetnum(intNUM);
//初始化num的函数
//初始化sort的函数
intreturnnum()//返回num的函数
intreturnsort()//返回sort的函数
private:
intsort,num;
voidarray:
getnum(intNUM)//初始化num的函数体
num=NUM;
getsort(intSORT)//初始化sort的函数体
voidmain()//主函数
inti,id,m,q,z,sort,b;
charj;
intgeshu;
intNUM;
stringNAME,KIND;
floatPRICE,POINT,sum=0;
Cmenufood[40];
//创建Cmenu类的对象数组
ifstreamf1("
menu.txt"
);
//文件输入菜单信息
for(j=0;
j<
12;
j++)
f1>
>
NUM;
KIND;
NAME;
PRICE;
food[j].getnum(NUM);
food[j].getkind(KIND);
food[j].getname(NAME);
food[j].getprice(PRICE);
food[0].getnum
(1);
food[0].getkind("
炒菜"
food[0].getname("
麻辣豆腐"
food[0].getprice(8);
food[1].getnum
(2);
food[1].getkind("
food[1].getname("
烧茄子"
food[1].getprice(10);
food[2].getnum(3);
food[2].getkind("
food[2].getname("
香辣肉丝"
food[2].getprice(15);
food[3].getnum(4);
food[3].getkind("
food[3].getname("
锅包肉"
food[3].getprice(15);
food[4].getnum(5);
food[4].getkind("
炒饭"
food[4].getname("
蛋炒饭"
food[4].getprice(5);
food[5].getnum(6);
food[5].getkind("
food[5].getname("
扬州炒饭"
food[5].getprice(6);
food[6].getnum(7);
food[6].getkind("
food[6].getname("
火腿炒饭"
food[6].getprice(6);
food[7].getnum(8);
food[7].getkind("
food[7].getname("
鱿鱼炒饭"
food[7].getprice(7);
food[8].getnum(9);
food[8].getkind("
面类"
food[8].getname("
刀削面"
food[8].getprice(5);
food[9].getnum(10);
food[9].getkind("
food[9].getname("
羊肉面"
food[9].getprice(8);
food[10].getnum(11);
food[10].getkind("
food[10].getname("
热干面"
food[10].getprice(5);
food[11].getnum(12);
food[11].getkind("
food[11].getname("
手擀面"
food[11].getprice(6);
f1.close();
"
━*━*━*━*━*━*━*━*━*━*━*━欢迎光临本店━*━*━*━*━*━*━*━*━*━*━*"
//菜单
while
(1)
━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━*━"
┏━━━━━━━━━━━━━━━━━━━━━━━━┓"
┃┃"
┃0---------------显示菜单里所有的菜的信息┃"
┃1---------------在菜单里按类查找。
┃"
┃2---------------点菜。
┗━━━━━━━━━━━━━━━━━━━━━━━━┛"
cin>
q;
if(q==0)//显示菜单里所有的菜名
-------------------------------菜单---