📄 login.c.txt
字号:
/*login.c: 顾客登录,判断顾客登录名、密码和权限,
根据权限调用相应功能选择界面*/
/*包含顾客信息头文件
包含创建顾客信息、增加、删除、修改、排序的顾客处理程序
包含管理员、普通顾客的功能选择界面处理程序*/
#include "user.h"
#include "cuser.c"
#include "admin.c"
#include "guest.c"
#include "adduser.c"
#include "deluser.c"
#include "sunum.c"
#include "munum.c"
int main( )
{
FILE *fp = NULL;
user Show;
user Tmps; /*临时存放顾客信息的结构体变量*/
char DataFile[40] = "yonghu"; /*存放顾客信息的文件名为yonghu*/
int i;
char relogin; /*是否重新登录的标志*/
int success=0; /*登陆成功的标志*/
/*CreatUser( );*/
printf("#===========================================#\n");
printf("# Welcome to the Product Management System! #\n");
printf("============================================#\n");
again:
/*输入登录名*/
printf("please enter the user name:");
scanf("%s",Tmps.Name);
/*输入密码,用不带回显的方式保证安全性*/
printf("password=");
for(i=0;i<6;i++)
{
Tmps.ps[i]=gatch( );
}
Tmps.ps[6]='\0';
/*打开yonghu文件,用来验证登录名和密码*/
fp=fopen(DataFile,"rb");
if (fp == NULL)
{
printf("\nOpen file%sfail!End with any key \n",DataFile);
perror("\OPen file fail");
getch( );
exit(1);
}
/*循环读取文件校验登录名和密码是否正确*/
while(fread(&Show,sizeof(user),1,fp) != (int)NULL)
(
/*如果通过验证,则将success成功登录标记设为1*/
if((strcmp (Tmps.Name,Show.Name)==0)&&(strcmp(Tmps.ps,Show.ps)==0))
{
printf("\nlogin successful!\n");
success=1;
/*判断权限,如power的值为1,则是管理员,并调用管理员功能选择界面*/
if(Show.power==1)
{
printf("\nyour power is administrator!\n");
admin( );/*调用管理员系统主控平台*/
)
/*判断权限,如power的值为0,则是普通顾客,并调用普通顾客功能选择界面*/
if(Show.power==0)
{
printf("\nyour power is user!\n");
Guest( );/*调用普通用户系统主控平台*/
}
}
}
/*如未能成功登录,让顾客选择重新登录或推出*/
if(success==0)
{
getchar( );
printf("\nerror user name or password!input again?(y/n)");
scanf("%c",&relogin);
if((relogin=='Y')!!(relogin=='y'))
{
printf("you choose input again:\n");
goto again;)
else
{
printf("end program");
getch( );
exit(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -