📄 login.c
字号:
#include "user.h"
#include "admin.c"
#include "guest.c"
/* 对用户的创建、增加、删除、修改、排序 */
#include "cuser.c"
int main()
{
FILE * fp=NULL;
user Show;
user TempS;/* 临时存放用户信息的结构体变量 */
char DataFile[40]="yonghu",c;/* 存放用户信息的文件名 */
int i;
char relogin;/* 是否重新登录的标志 */
int success=0;
/* CreateUser(); */
printf("#==============================#\n");
printf("# Welcome to the Vote System! #\n");
printf("#==============================#\n\n");
again:
/* 输入用户名 */
printf("Please enter the user name:");
scanf("%s",TempS.Name);
printf("password=");
fflush(stdin);
for(i=0;i<7;i++)
{
c=getch();
if(c==0x0d)
{
TempS.ps[i]='\0';
break;
}
printf("*");
TempS.ps[i]=c;
TempS.ps[i+1];
}
TempS.ps[7]='\0';
/* 打开yonghu文件,用来验证用户名和密码 */
fp=fopen(DataFile,"rb");
if(fp==NULL)
{
printf("\nOpen file %s fail! End With any key\n",DataFile);
perror("Open file fail");
getch();
exit(1);
}
/* 循环读取文件校验用户名和密码是否正确 */
while(fread(&Show,sizeof(user),1,fp)!=NULL)
/*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!");
success=1;
/* 判断权限,如power的值为1,则是管理员,并调用管理员功能界面 */
if(Show.power==1)
{
clrscr();
printf("\nyour power is administrator!\n\n\nPress any key to continu...\n");
getch();
Admin(Show);
break;
}/* 判断权限,如power的值为0,则是投票者,并调用投票者功能选择界面 */
if(Show.power==0)
{
clrscr();
printf("\nyour power is user!\nPress any key to continu...\n");
getch();
Guest(Show);
break;
}
}
}
fclose(fp);
/* 如未能成功登录,让用户选择重新登录或退出 */
if(success==0)
{
fflush(stdin);
printf("\nerror user name or password!input again?(y/n)");
fflush(stdin);
relogin=getchar();
if((relogin=='Y')||(relogin=='y'))
{
goto again;
}
else
{
printf("end program\n");
exit(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -