⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 login.c

📁 家庭财务管理系统应用软件给家庭成员提供了一个在Windows操作系统上运行的管理平台
💻 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 + -