将账户和密码以结构体的形式存入文件,方便写入和读取。
#include<bits/stdc++.h>
using namespace std;
struct user
{
char name[20];
char password[20];
} user;//账户和密码
void Yeanling(char name[]);
void menu()
{
cout<<" 【Yeanling】 "<<endl;
cout<<"【1】注册账户"<<endl;
cout<<"【2】登录账户"<<endl;
}
void Register()
{
FILE *f;
char t[20];
f=fopen("D:\\MY_STUDY_FILES\\C++_程序文件\\用户登录系统\\users.txt","a+");//路径需要自己选择
cout<<"请输入新的账户:";
cin>>user.name;
cout<<"请输入新的密码:";
cin>>user.password;
cout<<"用户 【"<<user.name<<"】 注册成功"<<endl;
fwrite(&user,sizeof(struct user),1,f);
fclose(f);
system("pause");
system("cls");
}
void Login()
{
char name[20],password[20];
FILE *f=fopen("D:\\MY_STUDY_FILES\\C++_程序文件\\用户登录系统\\users.txt","r");
cout<<"请输入账户:";
cin>>name;
while(!feof(f))
{
fread(&user,sizeof(struct user),1,f);
if(!strcmp(user.name,name))
{
cout<<"请输入密码:";
cin>>password;
if(!strcmp(user.password,password))
{
fclose(f);
system("cls");
Yeanling(user.name);
}
return;
}
}
cout<<"没有该用户,请注册!"<<endl;
fclose(f);
system("pause");
system("cls");
return;
}
void Yeanling(char name[])//登录成功,进入。
{
cout<<"亲爱的 【"<<name<<"】 欢迎来到Yeanling!\n";
system("pause");
system("cls");
}
int main()
{
int choice;
while(1)
{
menu();
cout<<"请输入选择:";
cin>>choice;
switch(choice)
{
case 1:
system("cls");
Register();
break;
case 2:
system("cls");
Login();
break;
default:
cout<<"请输入正确指令!"<<endl;
system("pause");
system("cls");
}
}
}
//小绵杨Yeanling