用C语言写一个函数实现用户注册功能,并且不能和已有账号重复
时间: 2023-03-26 09:01:50 浏览: 106
您好,我可以回答这个问题。以下是一个用 C 语言编写的用户注册函数示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_USERS 100
#define MAX_NAME_LENGTH 20
struct user {
char name[MAX_NAME_LENGTH];
char password[MAX_NAME_LENGTH];
};
struct user users[MAX_USERS];
int num_users = ;
int register_user(char *name, char *password) {
// 检查是否已经存在同名用户
for (int i = ; i < num_users; i++) {
if (strcmp(users[i].name, name) == ) {
return ; // 用户名已经存在
}
}
// 添加新用户
if (num_users < MAX_USERS) {
strcpy(users[num_users].name, name);
strcpy(users[num_users].password, password);
num_users++;
return 1; // 注册成功
} else {
return -1; // 用户数量已达上限
}
}
int main() {
// 示例用法
int result = register_user("Alice", "123456");
if (result == 1) {
printf("注册成功!\n");
} else if (result == ) {
printf("用户名已经存在!\n");
} else {
printf("用户数量已达上限!\n");
}
return ;
}
```
这个函数使用一个结构体数组来存储用户信息,每个用户包括用户名和密码。在注册新用户时,先检查是否已经存在同名用户,如果不存在则添加新用户。如果用户数量已经达到上限,则返回错误代码。