用c++代码写一个注册案例
时间: 2023-05-30 12:01:55 浏览: 41
以下是一个简单的C语言注册案例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_USERS 100 // 最大用户数
typedef struct {
char username[20];
char password[20];
} User;
User users[MAX_USERS]; // 用户数组
int num_users = 0; // 当前用户数
int main() {
int choice;
while (1) {
printf("1. 注册\n2. 登录\n3. 退出\n");
printf("请选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
register_user();
break;
case 2:
login();
break;
case 3:
exit(0);
default:
printf("无效的选择!\n");
}
}
return 0;
}
void register_user() {
if (num_users >= MAX_USERS) {
printf("用户数已达到最大值!\n");
return;
}
User user;
printf("请输入用户名:");
scanf("%s", user.username);
printf("请输入密码:");
scanf("%s", user.password);
for (int i = 0; i < num_users; i++) {
if (strcmp(users[i].username, user.username) == 0) {
printf("该用户名已存在!\n");
return;
}
}
users[num_users++] = user;
printf("注册成功!\n");
}
void login() {
char username[20], password[20];
printf("请输入用户名:");
scanf("%s", username);
printf("请输入密码:");
scanf("%s", password);
for (int i = 0; i < num_users; i++) {
if (strcmp(users[i].username, username) == 0 && strcmp(users[i].password, password) == 0) {
printf("登录成功!\n");
return;
}
}
printf("用户名或密码错误!\n");
}
```
代码使用了一个User结构体来保存用户名和密码,通过一个User类型的数组来保存所有的用户。在register_user函数中,先检查数组是否已满,如果未满,则输入用户名和密码,并检查用户名是否已存在。如果用户名不存在,则将新用户添加到数组中。在login函数中,输入用户名和密码,并检查是否匹配已有用户的信息。如果匹配,则登录成功,否则登录失败。