实现User类
题目:
设计一个User类,要求User类可以保持多个用户的用户名和密码信息,
实现User类的构造函数和AddUser方法添加新用户,
实现int login(char *name,char * pass)方法,该方法接受用户名和密码,
判断用户名对应的密码是否正确,如果正确返回用户的编号,如果不正确返回-1。
User类的使用示意如下所示,在你的代码中除了实现User类以外,还需一如如下main函数
int main(){
char name[10],name1[10],pass[10],pass1[10];
cin>>name>>pass>>name1>>pass1;
User user(“LiWei”,“liwei101”);
user.AddUser(name,pass);
if (user.login(name1,pass1) >=0)
{
cout<<“Success Login!”<<endl;
}
else{
cout<<“Login failed!”<<endl;
}
return 0;
}
例如输入:
test 1234567 test 123456回车
输出:
Login failed!
代码:
#include <iostream>
#include <cmath>
#include <string.h>
using namespace std;
int user_count=0;
class User
{
public:
User(char *name,char *pass);
void AddUser(char *name,char *pass);
int login(char *name,char * pass);
private:
char *namex[100];
char *passx[100];
};
User::User(char *name,char *pass)
{
AddUser(name,pass);
}
void User::AddUser(char *name,char *pass)
{
namex[user_count]=name;//添加名字到数组里
passx[user_count]=pass;//添加密码到数组里
user_count++;
}
int User::login(char *name,char *pass)
{
int i=0;
for (i=0;i<user_count;i++)//user_count是记录有多少个账号
{
if(strcmp(namex[i],name)==0 && strcmp(passx[i],pass)==0)//判断账号密码
return i;
}
return -1;
}
int main()
{
char name[10],name1[10],pass[10],pass1[10];
cin>>name>>pass>>name1>>pass1;
User user("LiWei","liwei101");
user.AddUser(name,pass);
if (user.login(name1,pass1) >=0)
{
cout<<"Success Login!"<<endl;
}
else{
cout<<"Login failed!"<<endl;
}
return 0;
}