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); }
更多学习资料请关注专题《管理系统开发》。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
赞 (0)