餐厅菜单c语言,C语言实现餐饮管理与点餐系统

本文实例为大家分享了C语言实现餐饮管理与点餐系统的具体代码,供大家参考,具体内容如下

一、项目简介

1、本程序实现了用户的点餐功能,共包含五类菜品:凉菜、热菜、锅仔、主食、饮品。还有查看所点菜品与结束等功能。

2、后台管理员:按a可进入,主页面并未提示。

3、合理运用getch函数,清屏与暂停函数,页面整洁清爽。

4、菜品与txt文件对应,可实现对程序与txt的同步增删改查等功能。

5、使用了C语言很多基础语法:函数、指针、结构体、文件等。

二、程序说明

程序运行后在主页面按a进入后台管理页面,给相应的菜品信息添加菜品,这些信息会自动保存到txt中,下次打开的时候也会自动读取,做好菜品信息的创建工作就可以回到主页面进行相应的用户点餐操作。

三、功能演示

d89b973f0ae0ecddfb24b114ee23057a.png

24787fad62c8f995d7a3659da057953d.png

727f2693dacfe4895aa0f033e6072ce4.png

545e95fe3c8f3a0bfed70eda2c1dea41.png

四、思维导图

4666f2f28c1e8c81f195bd101d9db6f3.png

五、程序代码

#include

#include

#include

#include

/*宏定义区*/

#define max_str 30 //最大字符串长度

#define max_num 30 //最大菜品数量

#define max_all 100 //今日售卖总计最大值

/*定义菜品结构体*/

struct dishes

{

char name[max_str];

int price;

};

/*定义全局变量*/

struct dishes list1[max_num]; //存放凉菜菜品信息

int num1=0; //存放凉菜菜品数量

int *p1=&num1;

struct dishes list2[max_num]; //存放热菜菜品信息

int num2=0; //存放热菜菜品数量

int *p2=&num2;

struct dishes list3[max_num]; //存放锅仔菜品信息

int num3=0; //存放锅仔菜品数量

int *p3=&num3;

struct dishes list4[max_num]; //存放主食菜品信息

int num4=0; //存放主食菜品数量

int *p4=&num4;

struct dishes list5[max_num]; //存放饮品菜品信息

int num5=0; //存放饮品菜品数量

int *p5=&num5;

struct dishes list6[max_num]; //存放顾客点餐菜品信息

int num6=0; //存放顾客点餐菜品数量

int *p6=&num6;

struct dishes list7[max_all]; //存放今日所点总菜品信息

int num7=0; //存放今日所点总菜品数量

int *p7=&num7;

/*全局声明*/

/*菜单的输出*/

//一级主菜单

char menu_m1();

// 管理员一级菜单

char menu_a1();

// 管理员二级菜单:添加或删除菜品的提示

char menu_a2();

//输出菜单1(包括提示输入语句)

void output_1(struct dishes list[],int num);

//输出菜品信息2(不含有提示输入语句)

void output_2(struct dishes list[],int num);

/*函数*/

//创建程序运行所需的txt文件

void creat_file();

//加载菜品信息到结构体数组,嵌套功能模块1:读取txt写入到单个结构体数组中

void load_dishes(struct dishes list1[],int *p1,struct dishes list2[],int *p2,struct dishes list3[],int *p3,struct dishes list4[],int *p4,struct dishes list5[],int *p5);

//实现点餐的函数,嵌套功能模块2:实现点餐的结构体数组写入数据

void ordering(struct dishes list1[],int num1,struct dishes list2[],int *p2,struct dishes list3[],int *p3);

// 查看与结算的输出函数

void settlement(struct dishes list[],int num);

// 计算今日收入

void income(struct dishes list[],int num);

// 实现菜品的价格修改,内嵌功能模块3:实现结构体菜品的价格修改与文件的重构

void change(struct dishes list[],int *p,char ch);

// 实现菜品的删除,内嵌功能模块4:实现结构体菜品的删除与文件的重构

void del(struct dishes list[],int *p,char ch);

// 函数:实现菜品的添加,内嵌功能模块5:实现结构体菜品的添加与文件的重构

void add(struct dishes list[],int *p,char ch);

/*功能模块区*/

//功能模块1:读取txt写入到单个结构体数组中

int function_read(struct dishes list[],FILE *fp);

//功能模块2:实现点餐的结构体数组写入数据

void function_ordering(struct dishes list1[],int num1,struct dishes list2[],int *p2,struct dishes list3[],int *p3,int choice);

// 功能模块3:实现结构体菜品的价格修改与文件的重构,内嵌功能模块6:对经过修改的菜品结构体按价格从低到高排序

int funtion_change(struct dishes list[],int num,FILE *fp);

//功能模块4:实现结构体菜品的删除与文件的重构

int function_del(struct dishes list[],int *p,FILE *fp);

//功能模块5:实现结构体菜品的添加与文件的重构,,内嵌功能模块6:对经过修改的菜品结构体按价格从低到高排序

int function_add(struct dishes list[],int *p,FILE *fp);

// 功能模块6:对经过修改的菜品结构体按价格从低到高排序

void function_sort(struct dishes list[],int num);

int main()

{

creat_file();

load_dishes(list1,p1,list2,p2,list

  • 11
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
餐厅点餐管理系统是一种用于管理餐厅点餐过程的软件系统,它可以帮助餐厅提高效率、减少错误,并提供更好的服务体验。以下是一个简单的餐厅点餐管理系统的C语言介绍: 1. 数据结构:在C语言中,可以使用结构体来表示菜品信息、订单信息等。例如,可以定义一个菜品结构体包含菜名、价格、库存等信息,以及一个订单结构体包含顾客姓名、菜品列表、总金额等信息。 2. 菜单管理:通过使用数组或链表等数据结构,可以实现菜单管理功能。可以将菜单信息存储在一个数组中,每个元素表示一个菜品的信息。通过遍历数组,可以显示菜单列表供顾客选择。 3. 点餐功能:顾客可以通过输入菜品编号或名称来选择菜品,并指定数量。系统可以根据顾客的选择更新订单信息,并计算总金额。 4. 订单管理:系统可以维护一个订单列表,每个订单包含顾客信息、菜品列表和总金额等信息。可以使用数组或链表等数据结构来存储订单信息,并提供添加订单、删除订单、查询订单等功能。 5. 库存管理:系统可以实时更新菜品的库存信息。当顾客下单时,系统需要检查库存是否充足,并相应地更新库存数量。 6. 结算功能:当顾客完成点餐后,系统可以根据订单信息计算总金额,并提供结算功能。可以使用变量来记录总金额,并根据顾客的支付方式进行结算。 7. 其他功能:餐厅点餐管理系统还可以包括其他功能,如顾客信息管理、员工管理、报表生成等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值