📄 login.c
字号:
/* login.h用户登陆,判断登录名、密码、权限,根据权限调用相应功能选择界面
包含用户信息头文件 、管理员、普通用户的功能选择界面*/
#include "stdio.h"
#include "admin.c"
#include "guest.c"
#include"cuser.c"
void main()
{
FILE * fp=NULL;
user Show;
user TempS;
char DataFile[10]="yonghu";/* 存放用户文件 */
/*CreatUser();*/
printf("\n");
int i;
char relogin; /* 是否重新登录 */
int success=0; /* 登录成功的标志 */
printf("#===================================================#\n");
printf("# Welcome to the Family Management System #\n");
printf("#===================================================#\n");
again:
/* 输入用户名 */
printf("Please enter the user name:");
scanf("%s",TempS.Name);
TempS.Name[19]='\0';
/* 输入密码 */
printf("Please enter the password:");
fflush(stdin);/* 清除输入缓冲区中的字符 */
for(i=0;i<7;i++)
{
TempS.ps[i]=getch();
TempS.ps[i+1]='\0';/* 字符要以'\0'结尾 */
if(TempS.ps[i]=='\b')
{
i--;
TempS.ps[i]='\0';/* 清除前一个字符 */
i--;/* 接收前一个字符 */
printf("\b ");
printf("\b");
continue;
}
if(TempS.ps[i]=='\r')
{
TempS.ps[i]='\0';
break;
}
printf("*");
}
fp=fopen(DataFile,"rb");
if(fp==NULL) /* 打开文件失败时提示 */
{
printf("\nOpen file %s fail!End with any key\n",DataFile);
perror("Open file fail");
getch();
return;
}
while(fread(&Show,sizeof(user),1,fp)!=(int)NULL)
{
if(strcmp(TempS.Name,Show.Name)==0&&strcmp(TempS.ps,Show.ps)==0)
{
printf("\nlogin successful!\n");
success=1;
break;
}
}
fclose(fp);
if(success==1) /* 登录成功 */
{
if(Show.power==1)
{
Admin(Show);/*家长(管理员)功能的界面*/
}
else
{
Guest(Show);
}
}/* 未登录成功 */
else
{
fflush(stdin);/* 清除输入缓冲区中的字符 */
printf("\nError user name or password!input again(y/n):");
relogin=getchar();
if(relogin=='y'||relogin=='Y')
{
goto again;
}
else
{
printf("End program!");
getch();
exit(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -