分享好友 资讯首页 资讯分类 切换频道

用户注册登录界面代码c

2025-11-29 21:0000

用户注册登录界面代码c

这是一个命令行界面的示例,你可以根据需要将其修改为图形用户界面(GUI)。

用户注册登录界面代码c

#include <stdio.h>
#include <string.h>
#define MAX_USERNAME 255
#define MAX_PASSWORD 255
typedef struct {
    char username[MAX_USERNAME];
    char password[MAX_PASSWORD];
} User;
User users[100]; // 假设最多有100个用户
int numUsers = 0; // 当前用户数
// 注册新用户
void registerUser() {
    User newUser;
    printf("Enter username: ");
    scanf("%s", newUser.username);
    printf("Enter password: ");
    scanf("%s", newUser.password);
    users[numUsers++] = newUser; // 添加新用户到数组
    printf("Registration successful.n");
}
// 用户登录验证
int login(char *username, char *password) {
    for (int i = 0; i < numUsers; i++) {
        if (strcmp(users[i].username, username) == 0 && strcmp(users[i].password, password) == 0) { // 比较用户名和密码是否匹配
            return i; // 返回用户索引,表示登录成功
        }
    }
    return -1; // 未找到匹配的用户,登录失败
}
int main() {
    int choice;
    while (1) { // 主循环,持续运行直到用户选择退出
        printf("1. Registern"); // 注册新用户选项
        printf("2. Loginn"); // 用户登录选项
        printf("3. Exitn"); // 退出程序选项
        printf("Enter your choice: "); // 提示用户选择操作选项并获取输入值,注意这里假设用户输入的是整数,在实际应用中,你可能需要添加错误处理代码来处理非整数输入的情况,例如使用scanf("%d", &choice)来获取整数输入,如果输入的不是整数,你可能需要循环提示用户重新输入直到获取正确的输入为止,或者使用其他方法获取用户输入并验证其有效性,这取决于你的具体需求和设计,在实际应用中,你可能还需要添加更多的功能,例如创建新用户账户、修改现有用户的密码等,这些功能都需要相应的代码来实现,请根据你的需求进行修改和扩展。"); scanf("%d", &choice); // 获取用户选择的操作选项,注意这里假设用户输入的是整数,在实际应用中,你可能需要添加错误处理代码来处理非整数输入的情况,例如使用scanf("%d", &choice)来获取整数输入,如果输入的不是整数,你可能需要循环提示用户重新输入直到获取正确的输入为止,或者使用其他方法获取用户输入并验证其有效性,这取决于你的具体需求和设计,在实际应用中,你可能还需要添加更多的功能,例如创建新用户账户、修改现有用户的密码等,这些功能都需要相应的代码来实现,请根据你的需求进行修改和扩展。"); switch (choice) { case 1: registerUser(); break; case 2: { char username[MAX_USERNAME], password[MAX_PASSWORD]; printf("Enter username: "); scanf("%s", username); printf("Enter password: "); scanf("%s", password); int index = login(username, password); if (index == -1) printf("Invalid username or password.n"); else printf("Login successful. User index: %dn", index); break; } case 3: return 0; default: printf("Invalid choice.n"); break; } } return 0; }```
举报
收藏 0
打赏 0
评论 0
 
友情链接