c++day7

cpp 复制代码
#include <iostream>
#include <vector>
#include <string>

using namespace std;

// 用户信息结构体
struct User {
    string username;
    string password;
};

// 全局用户数据库(实际应用应使用数据库)
vector<User> users;

// 注册功能实现
void registerUser() {
    User newUser;
    
    cout << "请输入用户名: ";
    cin >> newUser.username;
    
    // 检查用户名重复
    for (const auto& user : users) {
        if (user.username == newUser.username) {
            cout << "用户名已存在!" << endl;
            return;
        }
    }
    
    cout << "请输入密码: ";
    cin >> newUser.password;
    
    users.push_back(newUser);
    cout << "注册成功!" << endl;
}

// 登录功能实现
void loginUser() {
    string inputUsername, inputPassword;
    
    cout << "请输入用户名: ";
    cin >> inputUsername;
    cout << "请输入密码: ";
    cin >> inputPassword;
    
    for (const auto& user : users) {
        if (user.username == inputUsername && user.password == inputPassword) {
            cout << "登录成功!欢迎 " << inputUsername << endl;
            return;
        }
    }
    
    cout << "登录失败!用户名或密码错误" << endl;
}

// 主菜单界面
int main() {
    int choice;
    
    while (true) {
        cout << "
===== 本地用户系统 =====";
        cout << "
1. 注册
2. 登录
3. 退出";
        cout << "
请选择操作: ";
        
        cin >> choice;
        
        switch (choice) {
            case 1:
                registerUser();
                break;
            case 2:
                loginUser();
                break;
            case 3:
                cout << "退出系统" << endl;
                return 0;
            default:
                cout << "无效选项,请重新选择" << endl;
        }
    }
    
    return 0;
}
相关推荐
Zz_waiting.4 分钟前
文件操作和 IO - 3
算法
珊瑚里的鱼7 分钟前
【双指针】专题:LeetCode 283题解——移动零
开发语言·c++·笔记·算法·leetcode·职场和发展
π2707 分钟前
LeetCode:删除有序数组中的重复项
算法·leetcode·职场和发展
南星啊14 分钟前
【模板】缩点
算法·图论
keli_Jun33 分钟前
Java常见面试问题
java·开发语言·spring boot
努力学习的小廉34 分钟前
【C++】 —— 笔试刷题day_15
开发语言·c++
_假正经36 分钟前
相机回调函数为静态函数原因
c++·相机
我有医保我先冲1 小时前
C++笔记
java·c++·笔记
风中飘爻2 小时前
JavaScript:BOM编程
开发语言·javascript·ecmascript
_extraordinary_2 小时前
笔试专题(八)
算法