C++控制台实现简单注册登录

 更新时间:2020年12月28日 09:46:48   作者:乔路非  
这篇文章主要为大家详细介绍了C++控制台实现简单注册登录,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

C++控制台实现简单的注册登录,供大家参考,具体内容如下

#include<iostream>
#include<string>
#include <vector>
#include <conio.h>
void Display();//调用display显示switch()界面
void Register();//注册
void Enter();//登录
using namespace std; 
 class user{
 private:
 string ID;
 string Name;
 string Email;
 string Password;
 public:
 user(){};
 void Register();
 void Enter();
 } ;
 vector<user> people;
 
 void user:: Register()//注册
 {
 string pw1;
 string pw2;
 user person;
 cout<<"请设置您的ID:";
 flag:
 cin>>person.ID;
 for(int i=0;i<people.size();i++){
 if(people.at(i).ID==person.ID){
 cout<<"该ID已存在,请重新设置:";
 goto flag;
 }
 }
 cout<<"请设置您的用户名:";
 cin>>person.Name;
 cout<<"请绑定您的邮箱:";
 cin>>person.Email;
 cout<<"请设置您的密码:";
 flag0:
 cin>>pw1;
 cout<<"请再次确认您的密码:";
 cin>>pw2;
 if(pw1!=pw2)
 {
 cout<<"前后两次输入密码不一致,请重新设置密码:";
 goto flag0;
 }
 cout<<"注册成功!"<<endl;
 person.Password=pw1;
 people.push_back(person);
 Display();
 }
 void user::Enter()//登录
 {
 cout<<"请输入您的ID:";
 flag1:
 string id;
 string pwd;
 cin>>id;
 for(int i=0;i<people.size();i++){//验证ID是否存在
 int tk=1;tk++;
 if(people.at(i).ID==id){
 tk=2;
 cout<<"请输入您的密码:";
 flag2:
 cin>>pwd;
 if(people.at(i).Password!=pwd){
 cout<<"密码错误,请重新输入:";
 goto flag2;
 }
 cout<<"登录成功!"<<endl;
 cout<<" (1)Information查看信息\n (2)Exit退出\n\nChoice:";
 int choice;//选择界面
 cin>>choice; switch(choice)
 {
 case 1://查看信息
 cout<<"您的ID为:"<<people.at(i).ID<<endl;
 cout<<"您的密码为:"<<people.at(i).Password<<endl;
 cout<<"您的用户名为:"<<people.at(i).Name<<endl;
 cout<<"您的邮箱为:"<<people.at(i).Email<<endl;
 Display();
 case 2://退出
  exit(EXIT_FAILURE);
 }
 }
 }
 cout<<"该ID不存在,请重新输入:";
 goto flag1;
 }
 
 void Display()//界面
 {
 cout<<" (1)Register注册\n (2)Enter登录\n (3)Exit退出\n\nChoice:";
 int choice;//选择界面
 user u;
 cin>>choice; switch(choice)
 {
 case 1://注册
  u.Register();//调用函数
  break;
 case 2://登录
  u.Enter();//调用函数
  break;
 case 3://退出
 exit(EXIT_FAILURE);
 }
 }
 int main()
 {
 Display();//显示界面  1注册;2登录;3退出
 cin.get();
 return 0;
}

程序运行如下图所示:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 详解C++基础——类继承中方法重载

    详解C++基础——类继承中方法重载

    这篇文章主要介绍了C++基础——类继承中方法重载,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • C++编程语言中赋值运算符重载函数(operator=)的使用

    C++编程语言中赋值运算符重载函数(operator=)的使用

    本文主要介绍了C++编程语言中赋值运算符重载函数(operator=)介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Matlab利用遗传算法GA求解非连续函数问题详解

    Matlab利用遗传算法GA求解非连续函数问题详解

    遗传算法起源于对生物系统所进行的计算机模拟研究。其本质是一种高效、并行、全局搜索的方法,能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应地控制搜索过程以求得最佳解。本文将利用其求解非连续函数问题,需要的可以参考一下
    2022-09-09
  • VC打印word,excel文本文件的方法

    VC打印word,excel文本文件的方法

    这篇文章主要介绍了VC打印word,excel文本文件的方法,是VC操作文本文件中非常实用的技巧,需要的朋友可以参考下
    2014-10-10
  • C语言实现随机读写文件的函数详解

    C语言实现随机读写文件的函数详解

    文件的随机读写,可以在文件中指定的任意位置读或者写。这篇文章主要为大家详细介绍了C语言实现随机读写文件的3个函数,感兴趣的可以了解一下
    2023-03-03
  • 深入理解C++中的new/delete和malloc/free动态内存管理及区别介绍

    深入理解C++中的new/delete和malloc/free动态内存管理及区别介绍

    这篇文章主要介绍了深入理解C++中的new/delete和malloc/free动态内存管理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • C语言操作符进阶教程(表达式求值隐式类型转换方法)

    C语言操作符进阶教程(表达式求值隐式类型转换方法)

    这篇文章主要为大家介绍了C语言操作符进阶教程(表达式求值隐式类型转换方法)
    2022-02-02
  • C/C++ Qt MdiArea 多窗体组件应用教程

    C/C++ Qt MdiArea 多窗体组件应用教程

    MDI窗体控件类似于画布,该控件只具备展示窗体的功能,无法实现生成窗体,所以我们需要在项目中手动增加自定义的Dialog对话框,并对该对话框进行一定的定制,这篇文章主要介绍了C/C++ Qt MdiArea 多窗体组件应用,需要的朋友可以参考下
    2021-12-12
  • c++实现的常见缓存算法和LRU

    c++实现的常见缓存算法和LRU

    LRU缓存算法也叫LRU页面置换算法,是一种经典常用的页面置换算法,下面这篇文章主要介绍了c++实现的常见缓存算法和LRU,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • C++数组模拟之单链表与双链表和栈和队列的实现过程

    C++数组模拟之单链表与双链表和栈和队列的实现过程

    这篇文章主要介绍了C++数组模拟之单链表与双链表和栈和队列的实现过程,了解内部原理是为了帮助我们做扩展,同时也是验证了一个人的学习能力,如果你想让自己的职业道路更上一层楼,这些底层的东西你是必须要会的,跟随下文来具体了解吧
    2023-02-02

最新评论