当前位置: 首页 > 编程笔记 >

C语言代码实现点餐系统

潘弘博
2023-03-14
本文向大家介绍C语言代码实现点餐系统,包括了C语言代码实现点餐系统的使用技巧和注意事项,需要的朋友参考一下

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

#include<iostream>
#include<cstring>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<cstring>
#include<conio.h>
using namespace std;

typedef struct member
{
 char username[20];//用户名
 char password[20];//密码
}Member;

typedef struct product
{
 char name[20];//菜品名
 int price;
 int num;//销售数量
}Product;

/*菜单函数区*/
void menu1();/*主菜单*/
void menu2();/*管理员界面*/

void all_info();//点单信息
void member_log_up();//注册
void member_log_in_interface();//登录界面外观
int member_log_in();//登录
void check();

/*管理员菜单函数*/
void sell_info();//菜品所有信息
void password_manage();//用户名密码信息
int compare_password(char password[]);//对比密码函数

int main()
{
 int flag1=1,flag_member=0,flag_admin=0;
 int choice1,choice2;

 while(flag1){
 menu1();
 printf("\n");
 printf("请您选择(1-5):");
 scanf("%d",&choice1);
 if(choice1==1)/*会员登录*/
 {
 member_log_in_interface();

 flag_member=member_log_in();

 while(flag_member)
 {

  all_info();
  check();
 }
 }
 else if(choice1==2)/*会员注册*/
 {
 printf("\n\n\n\t\t\t正在进入用户注册界面...\n");

 member_log_up();
 }
 else if(choice1==3)/*管理员登录*/
 {
 printf("请输入密码:");
 char password[20]={0};
 scanf("%s",password);
 if(compare_password(password))
 {
  printf("\n\n\t\t\t\t --输入密码正确!--\n\n\t\t\t\t==正在进入管理员界面==\n");
  flag_admin=1;

 }
 else
 {
  printf("\n\n\t\t\t\t --输入密码错误!--\n");

 }
 while(flag_admin)
 {
  menu2();
  printf("请您选择(1-3):");
  scanf("%d",&choice2);
  switch(choice2)
  {
  case 1:password_manage();break;
  case 2:sell_info();break;
  case 3:flag_admin=0;break;
  }
 }
 }
 else if(choice1==4)/*退出系统*/
 {
 flag1=0;
 }
 }
 printf("你已经安全退出系统!(按任意键关闭界面)\n\n\t欢迎您的再次使用!\n\n");
 return 0;
}

void menu1()
{
 system("color E9");
 printf("\n\n");
 printf("\t\t\t *=======================================*\n");
 printf("\t\t\t| * - * - * Zhou Cheng - System - * - * |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| | [1] 会员登录   | |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| | [2] 会员注册   | |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| | [3] 管理员登录   | |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| | [4] 退出系统   | |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| * - * - * - * - * - * - * - * - * - * |\n");
 printf("\t\t\t *=======================================*\n");
}

void menu2()
{
 printf("\n\n");
 printf("\t\t\t *======================================*\n");
 printf("\t\t\t| | * - * - * 管-理-员-界-面 * - * - * | |\n");
 printf("\t\t\t| *     * |\n");
 printf("\t\t\t| | [1] 会员密码管理  | |\n");
 printf("\t\t\t| * [2] 各产品销售信息  * |\n");
 printf("\t\t\t| * [3] 退出管理员界面  * |\n");
 printf("\t\t\t| |     | |\n");
 printf("\t\t\t| * - * - * - * - * -- * - * - * - * - * |\n");
 printf("\t\t\t *======================================*\n");
}

int compare_password(char password[])/*管理员密码比对函数 */
{
 int i,flag=1;
 for(i=0;i<6;i++)
 {
 if(password[i]!='1'+i)flag=0;
 }
 return flag;
}

void member_log_up()//会员注册函数
{

 Member member;

 while(1)
 {
 printf("请输入您想创建的username(用户名):");
 scanf("%s",member.username);

 printf("请输入您的密码(20个字符以内):");
 scanf("%s",member.password);

 printf("是否确认创建(y/n):");
 char ch=getch();
 if(ch=='n')continue;
 else if(ch=='y')
 {
  FILE *fp=fopen("memberInfo.txt","a+");
  fprintf(fp,"%s %s ",member.username,member.password);
  fclose(fp);
  printf("\n您已注册成功!\n");
  printf("--------正在返回大厅--------");

  return ;
 }
 }
}

int member_log_in()
{
 Member member[100];
 FILE *fp=fopen("memberInfo.txt","a+");
 int i=0;
 while(!feof(fp))
 {
  fscanf(fp,"%s %s",member[i].username,member[i].password);
  i++;
 }
 char username[20],password[20];
 scanf("%s",username);
 printf("\t\t\t 密码 (password):");
 scanf("%s",password);
 int flag=0;
 for(int j=0;j<i;j++)
 {
  if(strcmp(username,member[j].username)==0&&strcmp(password,member[j].password)==0)
  {
  flag=1;
  break;
  }
 }
 return flag;
}

void member_log_in_interface()/*登入界面*/
{
 printf("\n\n\n\t\t\t***================================*** \n");
 printf("\t\t\t     \n");
 printf("\t\t\t 用户名 (username):");
}

void all_info()
{
 Product product[100];
 FILE *fp=fopen("productInfo.txt","a+");
 int i=0;
 while(!feof(fp))
 {
  fscanf(fp,"%s %d %d",product[i].name,&product[i].price,&product[i].num);
  i++;
 }
 printf("编号--菜品名---------单价---\n");
 for(int j=0;j<i;j++)
 {
  printf("%-6d%-15s%-7d\n",j+1,product[j].name,product[j].price);
 }
 printf("请输入想要购买的菜品编号以及数量(用空格分割):");
 int num,count;
 scanf("%d %d",&num,&count);
 printf("此函数还没写完...\n");
 printf("按任意键前往结算界面:");
 char c;
 scanf(" %c",&c);
}

void sell_info()
{
 Product product[100];
 FILE *fp=fopen("productInfo.txt","a+");
 int i=0;
 while(!feof(fp))
 {
  fscanf(fp,"%s %d %d",product[i].name,&product[i].price,&product[i].num);
  i++;
 }
 printf("--菜品名---------单价---销售量---销售额--\n");
 for(int j=0;j<i;j++)
 {
  printf(" %-15s%-7d%-9d%-8d\n",product[j].name,product[j].price,product[j].num,product[j].price*product[j].num);
 }
 printf("按任意键返回菜单:");
 char c;
 scanf(" %c",&c);
}
void password_manage()
{
 Member member[100];
 FILE *fp=fopen("memberInfo.txt","a+");
 int i=0;
 while(!feof(fp))
 {
  fscanf(fp,"%s %s",member[i].username,member[i].password);
  i++;
 }
 printf("----用户名------------密码----------");
 for(int j=0;j<i;j++)
 {
  printf("\n %-17s %-15s",member[j].username,member[j].password);
 }
 printf("按任意键返回菜单:");
 char c;
 scanf(" %c",&c);
}

void check()
{
 printf("此函数还没写...\n");
 printf("按任意键返回菜单:");
 char c;
 scanf(" %c",&c);
}

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍C语言实现餐饮点餐管理系统,包括了C语言实现餐饮点餐管理系统的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C语言实现餐饮点餐管理系统的具体代码,供大家参考,具体内容如下 具体代码如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍基于C语言实现点餐系统,包括了基于C语言实现点餐系统的使用技巧和注意事项,需要的朋友参考一下 这是一个很简单的点餐系统,用到的知识也不复杂,所以对新手学习还是很有作用,贴上来给大家参考下。 完成了如下功能:  1.显示餐厅提示语;  2.打印菜单(输出菜品分类:主食、甜点、饮料、主菜、开胃菜);  3.选择ID进入菜品分类子目录;  4.进行具体选择(可重复选择同一样菜);  5.返

  • 本文向大家介绍餐馆点菜系统C语言源代码,包括了餐馆点菜系统C语言源代码的使用技巧和注意事项,需要的朋友参考一下 餐馆点菜系统c语言的源代码,一些封装的函数,对链表的操作,还有文件的存取,供大家参考,具体内容如下 更多学习资料请关注专题《管理系统开发》。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍C语言实现餐饮管理与点餐系统,包括了C语言实现餐饮管理与点餐系统的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C语言实现餐饮管理与点餐系统的具体代码,供大家参考,具体内容如下 一、项目简介 1、本程序实现了用户的点餐功能,共包含五类菜品:凉菜、热菜、锅仔、主食、饮品。还有查看所点菜品与结束等功能。 2、后台管理员:按a可进入,主页面并未提示。 3、合理运用getch函

  • 本文向大家介绍C语言实现餐饮结账管理系统,包括了C语言实现餐饮结账管理系统的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C语言餐饮结账管理系统的具体代码,供大家参考,具体内容如下 使用C语言编写餐饮结账管理系统课程设计,包含设计报告,源代码. 源码下载:C语言餐饮结账管理系统 更多学习资料请关注专题《管理系统开发》。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多

  • 本文向大家介绍学生成绩管理系统C语言代码实现,包括了学生成绩管理系统C语言代码实现的使用技巧和注意事项,需要的朋友参考一下 C语言实现了学生成绩管理系统,可以进行学生成绩的增加,删除,更新,查询,计算和展示。 完整代码如下: 文件studata.txt文件展示如下: 更多学习资料请关注专题《管理系统开发》。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。