ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:21.99KB ,
资源ID:23074532      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23074532.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++课程设计自助点餐系统.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++课程设计自助点餐系统.docx

1、C+课程设计自助点餐系统面向对象程序课程设计之巴公井开创作时间:二O二一年七月二十九日(2014/2015学年第一学期第20周)指导教师:庄巧莉、杨东鹤班级:计算机科学与技术13(1)学号:姓名:面向对象程序课程设计一、题目二、需求分析三、系统结构图四、类的设计五、程序代码与说明六、运行结果与分析七、心得与体会一:题目自助点餐系统二:需求分析有一个小型餐厅,该餐厅提供即时就餐和外卖服务。现在这个餐厅打算使用自助点餐系统,让顾客自己点餐,实现以下功能。1、根据顾客的选择正确打出账单2、正确统计出每一天的及时就餐和外卖的销售情况3、实现对餐厅菜式和价格的有效管理4、考虑点餐的自动排序问题,使顾客可

2、以实时查询到自己菜单处理情况三:系统结构图四:类的设计Client类:客户类,包含客户属性姓名,电话号码,费用等信息,登记客户,记录客户订单信息ClientManager类:客户管理类,用于管理客户,记录客户数量,存储客户菜单信息,查询客户订单信息,统计订单FeeManager类:用于记录就餐、外卖的销售费用,统计收入Food类:餐厅食物的类,包含食物名称和价格FoodManager类:管理菜单,用于添加食物,修改食物,删除食物,记录分歧食物的信息,呈现菜单MenuView类:用于打印各种操纵界面五:程序代码与说明#ifndef CLIENT#define CLIENT#includeFood

3、Manager.h#includeusing namespace std;class Clientprivate: int number; /客户编号 int type; /客户的类型,1暗示就餐,2暗示外卖 double fee; /客户账单费用 char *name; /客户名称 char *phone; /客户手机号码public: Client() /构造函数 char * getName(); /返回客户姓名 int num100; /numi存储食物数量,i暗示食物编号 FoodManager client_fm; /管理客户所点的食物 Client(char *n,char *p

4、);/构造函数 int getNumber(); /返回客户编号 void setNumber(int n); /设置客户编号 int getType(); /返回客户类型 void setType(int n); /设置客户类型 void addFee(double x); /添加费用 double getFee(); /返回费用 void showClientMessage();/展示客户信息 void changNum(); /修改客户所点的食物的数量 void deleFood(); /删除客户所选择的食物;#endif#includeClient.h#includeClient:Cl

5、ient(char *s,char *p) name = s; phone = p; fee = 0; for(int i = 0 ; i 100 ; i+) numi = 0 ; cout客户注册成功endl;int Client:getNumber() return number;void Client:setNumber(int n) number = n;int Client:getType() return type;void Client:setType(int n) type = n;void Client:addFee(double x) fee += x;double Cli

6、ent:getFee() return fee;void Client:showClientMessage() char * ss; if(type = 1)ss = 就餐; else if(type = 2)ss = 外卖; cout姓名: namettssendl; cout手机号码: phoneendl; cout订单总价: feeendl; cout订单详情:endl; coutsetw(10)setiosflags(ios:left)食物序列setw(10)setiosflags(ios:left)菜名t数量t价格endl; for(int i = 0 ; i client_fm.g

7、etTotal() ; i +) coutsetw(10)setiosflags(ios:left)setw(10)i+1setiosflags(ios:left)client_fm.foodi.getName()tnumitnumi*client_fm.foodi.getPrice()endl; cout总价:ttfeeendl;char * Client:getName() return name;void Client:changNum() int n; int numss; coutn; cout您选择了食物: client_fm.getNameByList(n-1)endl; cou

8、tnumss; fee += (numss - numn-1 )*client_fm.getPriceByName(client_fm.getNameByList(n-1); numn-1=numss;void Client:deleFood() int n; coutn; cout您选择了食物: client_fm.getNameByList(n-1)endl; fee -= (numn-1 )*client_fm.getPriceByName(client_fm.getNameByList(n-1); for(int i = n-1 ; i client_fm.getTotal() ; i

9、 +) client_fm.foodi=client_fm.foodi+1; numi=numi+1; client_fm.setTotal(client_fm.getTotal()-1);#ifndef CLIENTMANAGER#define CLIENTMANAGER#includeClient.h#includeusing namespace std;#define MAX_CLIENT_NUM 60 /最大客户数量class ClientManagerpublic: ClientManager(); /构造函数 int clientNum ; /记录客户数量 Client clien

10、tMAX_CLIENT_NUM; /记录存储客户 void addClient(Client c); /添加新客户 int getClientNum(); /返回客户数量 void showQuery(char * s); /查询客户 void showAll(); /显示所有客户;#endif#includeClientManager.hClientManager:ClientManager() clientNum = 0;void ClientManager:addClient(Client c) clientclientNum+ = c; cout客户注册成功endl;int Clien

11、tManager:getClientNum() return clientNum;void ClientManager:showQuery(char * s) int count = 0; int th; cout-endl; for(int i = 0; i clientNum ; i +) if(clienti.getType()=1) cout第+count单: clienti.getName()t总价是: clienti.getFee()元t就餐endlendl; if(strcmp(clienti.getName(),s)=0)th =count; for(int i = 0; i

12、clientNum ; i +) if(clienti.getType()=2) cout第+count单: clienti.getName()t总价是: clienti.getFee()元t外卖endlendl; if(strcmp(clienti.getName(),s)=0)th =count; cout您当前排在第th单endl; cout-endl;void ClientManager:showAll() for(int i = 0 ; i clientNum ; i + ) if(clienti.getType()=1) cout订单号: i+1endl; clienti.show

13、ClientMessage(); coutendl; for(int i = 0 ; i clientNum ; i + ) if(clienti.getType()=2) cout订单号: i+1endl; clienti.showClientMessage(); coutendl; #ifndef FOOD#define FOODclass Food private: char *name; /食物名称 double price; /食物价格 public: Food(); /构造函数 Food(char *s,double p); /构造函数 void setName(char *s);

14、 /更改食物名称 char* getName(); /返回食物名称 double getPrice(); /返回食物价格 void setPrice(double p); /设置食物价格 void showMessage(); /显示食物的名称和价格;#endif#includeFood.h#includeusing namespace std;Food:Food(char *s,double p) name = s; price = p;void Food:setName(char *s) name = s;void Food:setPrice(double p) price = p;voi

15、d Food:showMessage() coutnametpriceendl;double Food:getPrice() return price;char* Food:getName() return name;#ifndef FOODMANAGER#define FOODMANAGER#includeFood.h#define MAX_FOOD_NUM 99 /最多容纳的食物种类数class FoodManager int total ; /食物种类数 public: FoodManager(); /构造函数 int getTotal() ; /返回食物种类数 Food foodMAX

16、_FOOD_NUM; /记录食物 void addFood(Food f); /添加食物 void addFood(char *s,double p); /添加食物 void deleteFood(); /删除食物 void changePrice(); /修改食物价格 void showFood(); /显示食物信息 char * getNameByList(int list); /通过食物编号返回食物名称 double getPriceByName(char *s); /通过食物名称返回食物价格 int getListByName(char *s); /通过食物名称返回食物编号 void

17、setTotal(int x); /修改食物种类数;#endif#includeFoodManager.h#includeusing namespace std;#includeFoodManager:FoodManager() total = 0;void FoodManager:addFood(Food f) foodtotal+=f; cout成功添加了食物,当前共有totalendl;void FoodManager:showFood() cout食物中共有total种endl; cout食物编号 名称tt单价endl; for(int i = 0 ; i total ; i + )

18、coutsetw(10)setiosflags(ios:left)isetw(10)setiosflags(ios:left)foodi.getName()tfoodi.getPrice()endl;void FoodManager:changePrice() char *s; int code; s = new char20; double p; coutcode; s = foodcode.getName(); cout您选择了食物: sendl; coutp; for(int i = 0; i total ; i +) if(strcmp(foodi.getName(),s)=0) fo

19、odi.setPrice(p); cout修改成功endl; return; cout没有这种食物,修改失败endl;void FoodManager:deleteFood() char *s; s = new char20; couts; for(int i = 0 ; i total ; i +) if(strcmp(foodi.getName(),s)=0) cout成功删除sendl; total -; for(int t = i; t total ; t +) foodt=foodt+1; return; cout没有这种食物endl;void FoodManager:addFood

20、(char *s , double p) foodtotal+=Food(s,p);double FoodManager:getPriceByName(char *s) for(int i = 0 ; i total ; i +) if(strcmp(foodi.getName(),s)=0) return foodi.getPrice(); return false;int FoodManager:getListByName(char *s) for(int i = 0 ; i total ; i +) if(strcmp(foodi.getName(),s)=0) return i; re

21、turn false;int FoodManager:getTotal() return total;char * FoodManager:getNameByList(int list) return foodlist.getName();void FoodManager:setTotal(int x) total = x;#ifndef FEEMANAGER#define FEEMANAGERclass FeeManagerprivate: double jiuCanFee; /就餐总收入 double waiMaiFee; /外卖总收入public: FeeManager(); /构造函数

22、 double getWaiMaiFee(); /返回外卖总收入 double getJiuCanFee(); /返回就餐总收入 void addWaiMaiFee(double x); /增加外卖总收入 void addJiuCanFee(double x); /添加就餐总收入;#endif#includeFeeManager.hFeeManager:FeeManager() jiuCanFee = 0; waiMaiFee = 0;double FeeManager:getWaiMaiFee() return waiMaiFee;double FeeManager:getJiuCanFee

23、() return jiuCanFee;void FeeManager:addWaiMaiFee(double x) waiMaiFee += x;void FeeManager:addJiuCanFee(double x) jiuCanFee += x;#ifndef MENUVIEW#define MENUVIEWclass MenuView private: char whiteSmile; /白色笑脸 char blackSmile; /黑色笑脸 char heart; /心形图形 public: MenuView(); /构造函数 void showJiuCan(); /显示就餐用户

24、点菜界面 void showWaiMai(); /显示外卖用户点菜界面 int showMain(); /显示用户选择就餐还是外卖界面 int showViewChoice(); /显示进入本系统的功能选择界面 int showRegister(); /显示客户注册界面 int showClientChoice(); /显示客户点餐界面 int showQuery(); /显示查询客户订单界面 int showMend(); /显示修改食物界面 int showMenuChoice(); /显示选择菜单界面 int showMendDingDan(); /显示客户修改订单界面;#endif#i

25、ncludeMenuView.h#includeusing namespace std;MenuView:MenuView() whiteSmile = 1; blackSmile = 2; heart = 3;int MenuView:showMain() for(int i = 1 ; i = 80 ; i+ )coutheart; for(int i = 1;i=80;i+)if(i=1|i=80)coutheart;else cout ; couthearttttt欢迎光临本餐厅; for(int j=1;j=33;j+)cout ;coutheart; for(int i = 1;i

26、=80;i+)if(i=1|i=80)coutheart;else cout ; for(int i = 1 ; i = 80 ; i+ )coutheart; /输出餐厅的外形 coutendlendl; coutt我是服务员小坠whiteSmile,竭诚为您服务哦blackSmileendlendlendl; for(int k=1;k=10;k+)cout ; for(int i = 1 ; i = 20 ; i+ )coutheart;coutendl; for(int k=1;k=10;k+)cout ; coutheart请选择您需要的服务heartendl; for(int k=1;k=10;k+)cout ; for(int i = 1 ; i = 60 ; i+ )coutheart;coutendl; for(int k=1;k=10;k+)cout ; coutheart1:就餐;for(int i = 1 ; i = 52 ; i + )cout ;

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

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