c语言使用结构体保存账号和密码的登录系统
时间: 2024-04-07 10:33:49 浏览: 22
下面是使用结构体来保存账号和密码的登录系统的示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_USERS 10
struct User {
char username[20];
char password[20];
};
int main() {
struct User users[MAX_USERS];
int numUsers = 0;
// 添加用户
strcpy(users[numUsers].username, "admin");
strcpy(users[numUsers].password, "admin123");
numUsers++;
strcpy(users[numUsers].username, "user");
strcpy(users[numUsers].password, "user123");
numUsers++;
char username[20], password[20];
int i;
printf("Welcome to the Login System!\n");
printf("Enter username: ");
scanf("%s", username);
printf("Enter password: ");
scanf("%s", password);
// 验证登录凭据
for (i = 0; i < numUsers; i++) {
if (strcmp(username, users[i].username) == 0 && strcmp(password, users[i].password) == 0) {
printf("Login successful!\n");
break;
}
}
if (i == numUsers) {
printf("Invalid username or password!\n");
}
return 0;
}
```
在这个示例中,我们定义了一个结构体 `User` 来存储用户名和密码。我们创建了一个用户数组 `users` 来保存所有的用户信息。在主函数中,我们先添加了两个用户,然后要求用户输入用户名和密码进行登录。我们使用循环遍历用户数组来验证登录凭据。如果找到匹配的用户名和密码,就打印登录成功的消息。否则,打印无效的用户名或密码的消息。