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

开通VIP
 

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

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(C专业课程设计自助点餐系统.docx)为本站上传会员【快乐****生活】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

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

1、 面向对象程序课程设计 (/第一学期第20周) 指导老师: 庄巧莉、杨东鹤 班级:计算机科学和技术13(1) 学号:你好你好你 姓名:你好你啊哈啊啊啊 面向对象程序课程设计 目 录 一、 题目 二、 需求分析 三、 系统结构图 四、 类设计 五、 程序代码和说明 六、 运行结果和分析 七、 心得和体会 一:题目 自助点餐系统 二:需求分析 有一个小型餐厅,该餐厅提供即时就餐和外卖服务。现在这个餐厅计划使用自助点餐系统,让用户自己点餐,实现以下功效。 1、依据用户选择正确打出账单

2、 2、正确统计出每一天立即就餐和外卖销售情况 3、实现对餐厅菜式和价格有效管理 4、考虑点餐自动排序问题,使用户能够实时查询到自己菜单处理情况 三:系统结构图 四:类设计 Client类:用户类,包含用户属性姓名,电话号码,费用等信息,登记用户,统计用户订单信息 ClientManager类:用户管理类,用于管理用户,统计用户数量,存放用户菜单信息,查询用户订单信息,统计订单 FeeManager类:用于统计就餐、外卖销售费用,统计收入 Food类:餐厅食物类,包含食物名称和价格 FoodManager类:管理菜单,用于添加食物,修改食物,删除食物,统计不一样食物信息,

3、展现菜单 MenuView类:用于打印多种操作界面 五:程序代码和说明 Client.h #ifndef CLIENT #define CLIENT #include"FoodManager.h" #include using namespace std; class Client { private: int number; //用户编号 int type; //用户类型,1表示就餐,2表示外卖 double fee; //用户账单费用 char *name; //用户名称 char *phone;

4、 //用户手机号码 public: Client(){} //结构函数 char * getName(); //返回用户姓名 int num[100]; //num[i]存放食物数量,i表示食物编号 FoodManager client_fm; //管理用户所点食物 Client(char *n,char *p);//结构函数 int getNumber(); //返回用户编号 void setNumber(int n); //设置用户编号 int getType(); //返回用户类型 void setType(int n); /

5、/设置用户类型 void addFee(double x); //添加费用 double getFee(); //返回费用 void showClientMessage();//展示用户信息 void changNum(); //修改用户所点食物数量 void deleFood(); //删除用户所选择食物 }; #endif Client.cpp #include"Client.h" #include Client::Client(char *s,char *p) { name = s; phone = p; fe

6、e = 0; for(int i = 0 ; i < 100 ; i++) num[i] = 0 ; cout<<"用户注册成功"<

7、 x) { fee += x; } double Client::getFee() { return fee; } void Client::showClientMessage() { char * ss; if(type == 1)ss = "就餐"; else if(type == 2)ss = "外卖"; cout<<"姓名: "<

8、out<

9、ient_fm.food[i].getPrice()<>n; cout<<"您选择了食物: "<>numss; fee += (numss -

10、 num[n-1] )*client_fm.getPriceByName(client_fm.getNameByList(n-1)); num[n-1]=numss; } void Client::deleFood() { int n; cout<<"请输入食物序号: ";cin>>n; cout<<"您选择了食物: "<

11、 n-1 ; i < client_fm.getTotal() ; i ++) { client_fm.food[i]=client_fm.food[i+1]; num[i]=num[i+1]; } client_fm.setTotal(client_fm.getTotal()-1); } ClientManager.h #ifndef CLIENTMANAGER #define CLIENTMANAGER #include"Client.h" #include using namespace std; #define MAX_

12、CLIENT_NUM 60 //最大用户数量 class ClientManager { public: ClientManager(); //结构函数 int clientNum ; //统计用户数量 Client client[MAX_CLIENT_NUM]; //统计存放用户 void addClient(Client c); //添加新用户 int getClientNum(); //返回用户数量 void showQuery(char * s); //查询用户 void showAll(); //显

13、示全部用户 }; #endif ClientManager.cpp #include"ClientManager.h" ClientManager::ClientManager() { clientNum = 0; } void ClientManager::addClient(Client c) { client[clientNum++] = c; cout<<"用户注册成功"<

14、howQuery(char * s) { int count = 0; int th; cout<<"----------------------------------"<

15、client[i].getName(),s)==0)th =count; } for(int i = 0; i < clientNum ; i ++) if(client[i].getType()==2) { cout<<"第"<<++count<<"单: "<

16、前排在第"<

17、i < clientNum ; i ++ ) { if(client[i].getType()==2) { cout<<"订单号: "<

18、/结构函数 Food(char *s,double p); //结构函数 void setName(char *s); //更改食物名称 char* getName(); //返回食物名称 double getPrice(); //返回食物价格 void setPrice(double p); //设置食物价格 void showMessage(); //显示食物名称和价格 }; #endif Food.cpp #include"Food.h" #include using namespace std; F

19、ood::Food(char *s,double p) { name = s; price = p; } void Food::setName(char *s) { name = s; } void Food::setPrice(double p) { price = p; } void Food::showMessage() { cout<

20、 return name; } FoodManager.h #ifndef FOODMANAGER #define FOODMANAGER #include"Food.h" #define MAX_FOOD_NUM 99 //最多容纳食物种类数 class FoodManager { int total ; //食物种类数 public: FoodManager(); //结构函数 int getTotal() ; //返回食物种类数 Food food[MAX_FOOD_NUM]; //统计食物 vo

21、id 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(ch

22、ar *s); //经过食物名称返回食物编号 void setTotal(int x); //修改食物种类数 }; #endif FoodManager.cpp #include"FoodManager.h" #include using namespace std; #include FoodManager::FoodManager() { total = 0; } void FoodManager::addFood(Food f) { food[total++]=f; cout<<"成功添加了食物,目

23、前共有"<

24、 void FoodManager::changePrice() { char *s; int code; s = new char[20]; double p; cout<<"请输入食物编号: "; cin>>code; s = food[code].getName(); cout<<"您选择了食物: "<>p; for(int i = 0; i < total ; i ++) if(strcmp(food[i].getName(),s)==0) { foo

25、d[i].setPrice(p); cout<<"修改成功"<>s; for(int i = 0 ; i < total ; i ++) if(strcmp(food[i].getName(),s)==0) { cout<<"成功删除"<

26、 --; for(int t = i; t < total ; t ++) food[t]=food[t+1]; return; } cout<<"没有这种食物"<

27、),s)==0) return food[i].getPrice(); return false; } int FoodManager::getListByName(char *s) { for(int i = 0 ; i < total ; i ++) if(strcmp(food[i].getName(),s)==0) return i; return false; } int FoodManager::getTotal() { return total; } char * FoodManager::getNameByList(i

28、nt list) { return food[list].getName(); } void FoodManager::setTotal(int x) { total = x; } FeeManager.h #ifndef FEEMANAGER #define FEEMANAGER class FeeManager { private: double jiuCanFee; //就餐总收入 double waiMaiFee; //外卖总收入 public: FeeManager(); //结构函数 d

29、ouble getWaiMaiFee(); //返回外卖总收入 double getJiuCanFee(); //返回就餐总收入 void addWaiMaiFee(double x); //增加外卖总收入 void addJiuCanFee(double x); //添加就餐总收入 }; #endif FeeManager.cpp #include"FeeManager.h" FeeManager::FeeManager() { jiuCanFee = 0; waiMaiFee = 0; } double FeeManager::getWa

30、iMaiFee() { return waiMaiFee; } double FeeManager::getJiuCanFee() { return jiuCanFee; } void FeeManager::addWaiMaiFee(double x) { waiMaiFee += x; } void FeeManager::addJiuCanFee(double x) { jiuCanFee += x; } MenuView.h #ifndef MENUVIEW #define MENUVIEW class MenuView { priv

31、ate: char whiteSmile; //白色笑脸 char blackSmile; //黑色笑脸 char heart; //心形图形 public: MenuView(); //结构函数 void showJiuCan(); //显示就餐用户点菜界面 void showWaiMai(); //显示外卖用户点菜界面 int showMain(); //显示用户选择就餐还是外卖界面 int showViewChoice(); //显示进入本系统功效选择界面 int showRegiste

32、r(); //显示用户注册界面 int showClientChoice(); //显示用户点餐界面 int showQuery(); //显示查询用户订单界面 int showMend(); //显示修改食物界面 int showMenuChoice(); //显示选择菜单界面 int showMendDingDan(); //显示用户修改订单界面 }; #endif MenuView.cpp #include"MenuView.h" #include using namespace std; MenuVie

33、w::MenuView() { whiteSmile = 1; blackSmile = 2; heart = 3; } int MenuView::showMain() { for(int i = 1 ; i <= 80 ; i++ )cout<

34、r(int i = 1;i<=80;i++){if(i==1||i==80)cout<

35、out<

36、r(int k=1;k<=10;k++)cout<<' '; cout<>

37、choice; return choice; } void MenuView::showJiuCan() { cout<<"欢迎就餐,本餐厅有以下食品供您品尝"<

38、 for(int j=1;j<=33;j++)cout<<' ';cout<

39、 cout<<"| 3:今日反馈 |"<>next; cout<

40、<>next; return next; } int MenuView::showClientChoice() { cout<<"------------------------"<

41、3:提交订单 |"<>next; return next; } int MenuView::showQuery() { cout<<"------------------------"<

42、 int next; cin>>next; return next; } int MenuView::showMend() { cout<<"------------------------"<

43、>next; return next; } int MenuView::showMenuChoice() { cout<<"添加菜单:"<>next; retur

44、n next; } int MenuView::showMendDingDan() { cout<<"------------------------"<>next; return next; } Main.cpp #

45、include #include"Food.h" #include"MenuView.h" #include"FoodManager.h" #include"ClientManager.h" #include"FeeManager.h" #include #include using namespace std; int main() { FeeManager feem;//管理就餐和外卖费用 MenuView mv; //管理界面 ClientManager cm; //管理用户类对象 Food

46、Manager fm;//管理食物类对象 fstream ioFile; //文件输入输出 int clientChoice;// 1 服务用户 2 食物管理 3 今日反馈 4退出系统 int clientService;//1新用户点餐 2 查询 int mainChoice;// 1 就餐 2 外卖 int curClient; //目前操作用户编号 int queryChoice;//1 查询订单 2 退出查询 int foodChoice;//1 添加食物 2 修改食物价格 3删除某种食物 4退出食物管理 int viewChoice;//1 用户服

47、务 2 食物管理 3 今日反馈 4 退出系统 int menuChoice;//1 原菜单 2 更新后菜单 int mendDingDanChoice;//1 修改数量 2 删除食物 3 退出修改 ioFile.open("C:\\Users\\Administrator\\Desktop\\food.txt",ios::in); while(!ioFile.eof()) { char *s; double p; s=new char[20]; ioFile>>s>>p; fm.addFood(s,p); } ioFile.clos

48、e(); //以上是从文件读入食物种类和价格信息 while(true){ viewChoice = mv.showViewChoice(); if(viewChoice == 1) //用户服务 { clientService = mv.showRegister(); if(clientService == 1)//用户注册 { char *name,*phone; name = new char[30]; phone = new char[20]; cout<<"请完善用户资料"<

49、cout<<"您订单号是"<>name; cout<<"请输入手机号码: ";cin>>phone; Client cc(name,phone); cc.setNumber(cm.getClientNum()); cm.addClient(cc); mainChoice = mv.showMain(); if(mainChoice == 1) //就

50、餐 { cm.client[curClient].setType(1); mv.showJiuCan(); while(true) { fm.showFood(); int choices; choices = mv.showClientChoice(); if(choices==1)//选择食物种类和数量,下单 { char *n; int code; n = new char[20]; int num

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服