求助,这是我代码的一部分
//新管理员账户注册void zhuce(Link &P)
{
Person admin;
color();
system("cls");
puts("");
puts("******************************************************************");
puts("* 用户注册 *");
puts("******************************************************************");
puts("");
printf("1.请输入注册ID:");
scanf("%s",admin.ID);
printf("2.请输入密码:");
scanf("%s",admin.power);
printf("3.请重复密码:");
scanf("%s",admin.rpower);
printf("4.工作:");
scanf("%s",admin.job);
printf("5.性别:");
scanf("%s",admin.sex);
printf("6.年龄:");
scanf("%d",&admin.age);
getchar();
printf("7.密码找回问题:");
scanf("%s",admin.problem);
printf("8.密码找回答案:");
scanf("%s",admin.answer);
//判断密码和重复密码是否一致
if(strcmp(admin.power ,admin.rpower)!=0)
{
puts("密码与重复密码不一致,请重新注册");
getchar();
getchar();
zhuce(P);
}
else
{
//查找此ID是否存在
if( LocateelemID(P, admin) )
{
puts("操作失败,该管理员已经存在" );
getchar();
printf("是否进行登录?1.是 0.否\n");
int a;
scanf("%d",&a);
getchar();
if(!a)
zhuce(P);
return;
}
//将该管理员信息放入线性表中
//为简单起见,我们把新添加的结点放到线性表的前面
if( Listinsert(P, 1, admin ) )
puts("操作成功" );
else
puts("操作失败" );
getchar();
puts("按任意键返回登录界面");
getchar();
}
}
//找回管理员密码
int zhaohui(Link &P)
{
Person admin;
system("cls");
color();
puts("");
puts("***************************************************************************");
puts("* 找回密码 *");
puts("***************************************************************************");
puts("");
printf("请输入您要找回密码的ID:");
scanf("%s",admin.ID);
int a=LocateID(P,admin);
if(a)
{
printf("您的问题:%s\n",ad.problem);
printf("您的回答:");
scanf("%s",admin.answer);
if(strcmp(admin.answer,ad.answer)==0)
{
printf("回答正确,下面请修改密码\n");
while(1)
{
printf("您的新密码:");
scanf("%s",ad.power);
printf("重复您的新密码:");
scanf("%s",ad.rpower);
if(strcmp(ad.power,ad.rpower)!=0)
{
printf("请重新修改密码\n");
getchar();
continue;
}
else
{
xiugai(P);
return 1;
}
}
}
else
{
printf("回答问题错误!");
getchar();
getchar();
return 0;
}
}
else
{
puts("您查找的ID不存在。");
puts("1.登录界面 2.重新找回");
scanf("%d",&a);
getchar();
if(a==1)
return 0;
else
zhaohui(P);
}
}
//对找回密码的ID进行查找,并返回改管理员的信息
int LocateID(Link P, Person admin)
{
Node *p;
p=P->next;
while(p!=NULL)
{
if(strcmp(admin.ID,p->data.ID)==0)
{
ad=p->data;
return 1;
}
p=p->next;
}
return 0;
}
//对找回密码中的,修改后的密码对管理员信息的修改
void xiugai(Link &P)
{
Node *p;
p=P->next;
while(p!=NULL)
{
if(strcmp(ad.ID,p->data.ID)==0)
{
strcpy(p->data.power,ad.power);
break;
}
p=p->next;
}
}
报错c:\users\administrator\desktop\vivarium\ui.h(68) : warning C4518: 'int ' : storage-class or type specifier(s) unexpected here; ignored
c:\users\administrator\desktop\vivarium\ui.h(68) : error C2146: syntax error : missing ';' before identifier 'zhaohui'
c:\users\administrator\desktop\vivarium\ui.h(68) : fatal error C1004: unexpected end of file found