帮我用c写个用户登陆系统
时间: 2024-03-01 12:53:10 浏览: 15
好的,下面是一个简单的用户登录系统的C语言代码示例:
```
#include <stdio.h>
#include <string.h>
#define MAX_USERNAME_LENGTH 20
#define MAX_PASSWORD_LENGTH 20
#define MAX_USERS 10
struct User {
char username[MAX_USERNAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
};
int main() {
struct User users[MAX_USERS] = {
{"user1", "password1"},
{"user2", "password2"},
{"user3", "password3"}
};
int num_users = 3;
char username[MAX_USERNAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
int found = 0;
printf("Welcome to the login system!\n");
do {
printf("Username: ");
scanf("%s", username);
printf("Password: ");
scanf("%s", password);
for (int i = 0; i < num_users; i++) {
if (strcmp(username, users[i].username) == 0 && strcmp(password, users[i].password) == 0) {
found = 1;
break;
}
}
if (found) {
printf("Login successful!\n");
} else {
printf("Invalid username or password. Please try again.\n");
}
} while (!found);
return 0;
}
```
这个代码示例使用了一个结构体来存储用户的用户名和密码,最多可以存储10个用户。在主函数中,它首先初始化一些用户,然后使用一个do-while循环来获取用户输入的用户名和密码。然后,它遍历已存储的用户,检查输入的用户名和密码是否匹配。如果匹配成功,它将设置一个标志并退出循环,否则它将继续提示用户输入用户名和密码。
注意,这个代码示例还没有添加任何安全措施,比如防止缓冲区溢出等。在实际应用中,请确保采取适当的安全措施来保护用户数据。