最新c++餐厅系统.doc
《最新c++餐厅系统.doc》由会员分享,可在线阅读,更多相关《最新c++餐厅系统.doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品资料c+餐厅系统.北华大学C+课程实习报告餐厅点菜系统 学 院:电气信息工程学院 专 业:电子信息工程 班 级: 学 号: 姓 名: 指导教师: 餐厅点菜系统一、 需求分析1、 该程序对于餐厅菜单进行管理,显示所有菜,顾客可以点餐厅的所有菜,也可以按类查找,自动生成菜单,自动计算消费金额,可以使用优惠劵2、 显示菜的编号、菜名、类别和单价3、 菜可以按类查找:炒菜、炒饭和面类4、 点菜a)增加点菜b)删除一个点菜c)输出点菜信息并保存d)计算消费金额 优惠卷 1)金额优惠 2)打折优惠二、 设计实现该餐厅点菜系统共有两个类和一个构造函数,Cmenu 类(菜的属性)和array类 (菜的数组
2、),与函数youhui(计算有优惠卷时的价格)在Cmenu类中,定义:name 菜的编号,name 菜名,price 菜的单价,kind 菜的种类,sort 菜的数量,函数getnum 录入菜的编号函数实现:函数 getname 实现:录入菜的名字,函数 getprice 实现:录入菜的单价,函数 getkind 实现:录入菜的类别,函数 getsort 实现:录入所点菜的数量,函数 menudisplay 实现:菜谱显示, 函数selectdisplay 实现:对所点的菜进行输出,函数 returnnum 实现:返回菜的编号,函数 returnname 实现:返回菜名,函数 returnpr
3、ice 实现:返回菜的单价,函数 returnkind 实现:返回菜的类别,函数 returnsort 实现:返回菜的数量。在array类中,定义:sort 菜的类别,num 菜的数量函数实现:函数 getnum 实现:初始化num,函数 getsort 实现:初始化sort,函数 returnnum 实现:返回num,函数 returnsort 实现:返回sort主函数main的运行流程图:退出界面getnum( )getsort( )returnnum( )returnsort( )selectdisplay( )file(“select.txt”)returnprice( )return
4、sort( )returnkind( )youhui( )点菜array类菜单显示menudisplay()()按类查找returnkind()201显示界面选择操作定义变量:Int sort,geshu,NUMString NAME,KIND文件输入菜单信息f1(“menu.txt”)开始三、 测试结果首页:菜的信息:按类查找:炒菜炒饭面类点菜菜的信息:增加点菜:删除点菜:计算消费金额:1、没有拥有优惠卷2、 拥有优惠卷:a)20元的优惠卷b) 0.85折优惠卷退出系统:四、 结论及需改进的问题餐厅点菜系统是在图书管理系统的基础上,慢慢自己改进的,其中增加点菜,删除点菜,输出菜单,按类查询都
5、是按照图书管理系统中增加图书,删除图书,显示图书,按类查询中改进的,其中最重要的是菜单的录用,自己想了很多方法,最后用文本输入函数做的,把菜单完全的输入进去,还有一点新颖的地方,源于优惠劵的使用,不仅可以使用金额的优惠,并且还会使用打折卷的优惠,虽然这里面的算法很简单,但是增加的程序的实用性。我感觉不足的是,应该有一个会进人后台的功能,进去可以增加菜单里的菜,删除菜,更改类别和金额,更方便餐厅的管理者,当然进人的时候,加入管理员密码。餐厅点菜系统C+代码#include #include #include#include using namespace std;class Cmenu /创建C
6、menu类 菜的属性 int num; /菜的编号 string name; /菜名 float price; /菜的单价 string kind; /菜的种类 int sort; /菜的数量public: void getnum(int i); /录入菜的编号 void getname(string Name); /录入菜的名字 void getprice(float Price); /录入菜的单价 void getkind(string Kind); /录入菜的类别 void getsort(int SORT); /录入所点菜的数量 void menudisplay(); /菜谱显示 vo
7、id selectdisplay(); /对所点的菜进行输出 float returnnum() /返回菜的编号 return num; string returnname() /返回菜名 return name; float returnprice() /返回菜的单价 return price; string returnkind() /返回菜的类别 return kind; int returnsort() /返回菜的数量 return sort; ;void Cmenu:getnum(int i) /录入菜的编号函数 num=i;void Cmenu:getname(string Nam
8、e) /录入菜的名字 name=Name;void Cmenu:getprice(float Price) /录入菜的单价 price=Price;void Cmenu:getkind(string Kind) /录入菜的类别 kind=Kind; void Cmenu:getsort(int SORT) / 录入所点菜的数量 sort=SORT; void Cmenu:menudisplay() /菜单的信息显示coutsetw(3)numsetw(22)namesetw(16)kindsetw(16)priceendl; void Cmenu:selectdisplay() /对所点的菜进
9、行输出coutsetw(3)numsetw(24)namesetw(16)kindsetw(16)pricesetw(19)sort1.0) sum=sum-point;if(point=1.0)sum=sum*point; return sum;class array /创建一个array数组 public:void getnum(int NUM); /初始化num的函数 void getsort(int SORT); /初始化sort的函数 int returnnum() /返回num的函数 return num; int returnsort() /返回sort的函数 return so
10、rt; private: int sort,num;void array:getnum(int NUM) /初始化num的函数体 num=NUM;void array:getsort(int SORT) /初始化sort的函数体sort=SORT;void main() /主函数int i,id,m,q,z,sort,b;char j; int geshu;int NUM; string NAME,KIND;float PRICE,POINT,sum=0;Cmenu food40; /创建Cmenu类的对象数组 ifstream f1(menu.txt); /文件输入菜单信息 for(j=0;
11、jNUM;f1KIND;f1NAME;f1PRICE; foodj.getnum(NUM);foodj.getkind(KIND); foodj.getname(NAME); foodj.getprice(PRICE);food0.getnum(1);food0.getkind(炒菜); food0.getname(麻辣豆腐); food0.getprice(8);food1.getnum(2);food1.getkind(炒菜); food1.getname(烧茄子); food1.getprice(10);food2.getnum(3);food2.getkind(炒菜); food2.g
12、etname(香辣肉丝); food2.getprice(15);food3.getnum(4);food3.getkind(炒菜); food3.getname(锅包肉); food3.getprice(15);food4.getnum(5);food4.getkind(炒饭); food4.getname(蛋炒饭); food4.getprice(5);food5.getnum(6);food5.getkind(炒饭); food5.getname(扬州炒饭); food5.getprice(6);food6.getnum(7);food6.getkind(炒饭); food6.getna
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 c+ 餐厅 系统
限制150内