#include
#include
#include
#include
#include
#include
#include
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);
}