📄 register.c
字号:
/*////////////////////////////////////////////////////
Author:
Tiem: 2007-10-09
Files Name: Register.c
Functions: 主要是注册功能函数的实现部分
/////////////////////////////////////////////////////*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#include "Structs.h"
#include "Functions.h"
/*注册学生*/
void stuRegister()
{
int i;
char c;
USER use,use1;
FILE *fp;
printf("\n\t\t请输入新学生用户名(小于20): ");
scanf("%s",use.userName);
printf("\n\t\t请输入密码(小于15): ");
for (i=0;i<15 && c!='\r';i++) /*让用户注册是输入的密码显示星号,提高安全性*/
{
c=getch();
use.Password[i]=c;
putchar('*') ;
}
use.Password[i-1]='\0';
if ((fp=fopen("stuUsers.dat","ab+"))==NULL) /*以读的形式打开文件stuUsers.dat,如果不存在则新建立一个*/
{
printf("\t\t不能建立stuUsers.dat文件\n");
return;
}
rewind(fp); /*将文件指针移到文件首部*/
while (!feof(fp)) /*查找是否存在用户名重复*/
{
fread(&use1,sizeof(USER),1,fp);
if (strcmp(use1.userName,use.userName)==0) break;
}
if (!feof(fp)) /*存在重复用户名时,显示相应信息*/
{
printf("\n\n\t----------不能注册相同用户名的用户!----------\n");
stuRegister();
}
else
{
fwrite(&use,sizeof(USER),1,fp); /*将用户信息保存在stuUsers.dat文件中*/
fclose(fp); /*关闭文件*/
printf("\n\n\t\t===============注册成功!==============\n");
printf("\n\t\t########欢迎使用学生选课管理系统!#######\n");
system("pause");
SMenu();
return;
}
}
/*注册教师*/
void teacherRegister()
{
int i;
char c;
USER use,use1;
FILE *fp;
printf("\n\t\t请输入新教师用户名(小于20): ");
scanf("%s",use.userName);
printf("\n\t\t请输入密码(小于15): ");
for (i=0;i<15 && c!='\r';i++) /*让用户注册是输入的密码显示星号,提高安全性*/
{
c=getch();
use.Password[i]=c;
putchar('*') ;
}
use.Password[i-1]='\0';
if ((fp=fopen("teacherUsers.dat","ab+"))==NULL) /*以读的形式打开文件teacherUsers.dat,如果不存在则新建立一个*/
{
printf("\t\t不能建立teacherUsers.dat文件\n");
return;
}
rewind(fp); /*将文件指针移到文件首部*/
while (!feof(fp)) /*查找是否存在用户名重复*/
{
fread(&use1,sizeof(USER),1,fp);
if (strcmp(use1.userName,use.userName)==0) break;
}
if (!feof(fp)) /*存在重复用户名时,显示相应信息*/
{
printf("\n\n\t----------不能注册相同用户名的用户!----------\n");
teacherRegister();
}
else
{
fwrite(&use,sizeof(USER),1,fp); /*将用户信息保存在teacherUsers.dat文件中*/
fclose(fp); /*关闭文件*/
printf("\n\n\t\t===============注册成功!==============\n");
printf("\n\t\t########欢迎使用学生选课管理系统!#######\n");
system("pause");
TMenu();
return;
}
}
void admRegister()
{
int i;
char c;
USER use,use1;
FILE *fp;
printf("\n\t\t请输入用户名(小于20): ");
scanf("%s",use.userName);
printf("\n\t\t请输入密码(小于15): ");
for (i=0;i<15 && c!='\r';i++) /*让用户注册是输入的密码显示星号,提高安全性*/
{
c=getch();
use.Password[i]=c;
putchar('*') ;
}
use.Password[i-1]='\0';
if ((fp=fopen("admUsers.dat","wb+"))==NULL) /*以读的形式打开文件teacherUsers.dat,如果不存在则新建立一个*/
{
printf("\t\t不能建立amdUsers.dat文件\n");
return;
}
rewind(fp); /*将文件指针移到文件首部*/
while (!feof(fp)) /*查找是否存在用户名重复*/
{
fread(&use1,sizeof(USER),1,fp);
if (strcmp(use1.userName,use.userName)==0) break;
}
if (!feof(fp)) /*存在重复用户名时,显示相应信息*/
{
printf("\n\n\t----------不能注册相同用户名的用户!----------\n");
admRegister();
}
else
{
fwrite(&use,sizeof(USER),1,fp); /*将用户信息保存在teacherUsers.dat文件中*/
fclose(fp); /*关闭文件*/
printf("\n\n\t\t===============注册成功!==============\n");
printf("\n\t\t########欢迎使用学生选课管理系统!#######\n");
system("cls");
admLogOn();
return;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -