这篇文章主要讲解了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语言如何实现点餐系统有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。