c/c++语言开发共享C++实现简单的通讯录管理系统

本文实例为大家分享了c++实现简单的通讯录管理系统的具体代码,供大家参考,具体内容如下案例描述:通讯录是一个可以记录亲人、好友信息的工具。本教程主要利用c++来实现一个通讯录管理系统系统中需要实现的功

c/c++开发分享C++实现简单的通讯录管理系统实例为大家分享了c++实现简单的通讯录管理系统的具体代码,供大家参考,具体内容如下

案例描述:

通讯录是一个可以记录亲人、好友信息的工具。
本教程主要利用c++来实现一个通讯录管理系统
系统中需要实现的功能如下:

  • 添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人
  • 显示联系人:显示通讯录中所有联系人信息
  • 删除联系人:按照姓名进行删除指定联系人
  • 查找联系人:按照姓名查看指定联系人信息
  • 修改联系人:按照姓名重新修改指定联系人
  • 清空联系人:清空通讯录中所有信息
  • 退出通讯录:退出当前使用的通讯录
#include<iostream>  #include<string>  using namespace std;  #define max  1000    //通讯录总人数,可以修改    //联系人信息结构体  struct person  {      string name;      string sex;      int  age;      int number;      string address;  };  //通讯录结构体  struct addressbook  {      struct person personarray[max]; //通讯录中保存的联系人数组      int m_size; //通讯录中人员个数  };    //菜单界面  void showmenu()  {      cout << "***************************" << endl;      cout << "*****  1、添加联系人  *****" << endl;      cout << "*****  2、显示联系人  *****" << endl;      cout << "*****  3、删除联系人  *****" << endl;      cout << "*****  4、查找联系人  *****" << endl;      cout << "*****  5、修改联系人  *****" << endl;      cout << "*****  6、清空联系人  *****" << endl;      cout << "*****  0、退出通讯录  *****" << endl;      cout << "***************************" << endl;  }    //查找联系人  int findperson(addressbook* abs, string name) {      //-1代表不存在该联系人      int j = -1;      for (int i = 0; i < abs->m_size; i++) {          if (abs->personarray[i].name == name) {              cout << "姓名:" << abs->personarray[i].name << "    "                  << "性别:" << abs->personarray[i].sex << "    "                  << "年龄:" << abs->personarray[i].age << "    "                  << "联系电话:" << abs->personarray[i].number << "    "                  << "家庭住址:" << abs->personarray[i].address << endl;              //获得已存在联系人的下标              j = i;          }      }      return j;  }    //添加联系人  void addperson(addressbook* abs, string name) {      int sex = 0;      int age;      int number;      string address;        abs->personarray[abs->m_size].name = name;      cout << "请输入性别:" << endl;      cout << "1 -- 男" << endl;      cout << "2 -- 女" << endl;      //性别      while (true)      {          cin >> sex;          if (sex == 1 || sex == 2)          {              if (sex == 1) {                  abs->personarray[abs->m_size].sex = "男";                  break;              }              else              {                  abs->personarray[abs->m_size].sex = "女";                  break;              }          }          cout << "输入有误,请重新输入";      }        //年龄      cout << "请输入年龄:" << endl;      cin >> age;      abs->personarray[abs->m_size].age = age;        //联系电话      cout << "请输入联系电话:" << endl;      cin >> number;      abs->personarray[abs->m_size].number = number;        //家庭住址      cout << "请输入家庭住址:" << endl;      cin >> address;      abs->personarray[abs->m_size].address = address;        //更新通讯录人数      abs->m_size++;      cout << "添加成功" << endl;      system("pause");      //执行清屏操作      system("cls");  }    //判断联系人受否存在  void existsperson(addressbook* abs, string name) {      //判断通讯录是否已满      if (abs->m_size == 1000) {          cout << "通讯录已满,不能添加联系人!" << endl;      }      //未满,则判断联系人是否已存在      else      {  //判断用户输入的联系人是否存在          int p = findperson(abs, name);          //不存在执行添加联系人操作          if (p == -1) {              addperson(abs, name);          }          else          {  //若存在,则输出联系人信息,并询问用户是否继续添加              int i = p;              cout << "姓名:" << abs->personarray[i].name << "    "                  << "性别:" << abs->personarray[i].sex << "    "                  << "年龄:" << abs->personarray[i].age << "    "                  << "联系电话:" << abs->personarray[i].address << "    "                  << "家庭住址:" << abs->personarray[i].address << endl;              cout << "联系人已存在! " << endl;              system("pause");              //执行清屏操作              system("cls");          }      }  }    //删除联系人  void deleteperson(addressbook* abs) {      string name;      cout << "请输入联系人姓名" << endl;      cin >> name;      //判断用户输入的联系人是否存在      int p = findperson(abs, name);      if (p != -1) {          //进行删除联系人操作          for (int i = p; i < abs->m_size; i++) {              abs->personarray[i] = abs->personarray[i + 1];          }          //更新通讯录          abs->m_size--;          cout << "删除成功!" << endl;      }      else      {          cout << "查无此人!" << endl;      }      system("pause");      //执行清屏操作      system("cls");  }    //显示联系人  void showperson(addressbook* abs) {      if (abs->m_size == 0)      {          cout << "当前记录为空" << endl;      }      else      {          for (int i = 0; i < abs->m_size; i++)          {              cout << "姓名:" << abs->personarray[i].name << "t";              cout << "性别:" << abs->personarray[i].sex << "t";              cout << "年龄:" << abs->personarray[i].age << "t";              cout << "电话:" << abs->personarray[i].number << "t";              cout << "住址:" << abs->personarray[i].address << endl;          }      }      system("pause");      system("cls");  }    //修改联系人  void changeperson(addressbook* abs) {      string name;      int sex = 0;      int age;      int number;      string address;        cout << "请输入联系人姓名:" << endl;      cin >> name;      //判断用户输入的联系人是否存在      int  p = findperson(abs, name);      if (p != -1) {          cout << "请输入联系人姓名:" << endl;          cin >> name;          abs->personarray[p].name = name;          cout << "请输入性别:" << endl;          cout << "1 -- 男" << endl;          cout << "2 -- 女" << endl;          //性别          while (true)          {              cin >> sex;              if (sex == 1 || sex == 2)              {                  if (sex == 1) {                      abs->personarray[p].sex = "男";                      break;                  }                  else                  {                      abs->personarray[p].sex = "女";                      break;                  }              }              cout << "输入有误,请重新输入";          }            //年龄          cout << "请输入年龄:" << endl;          cin >> age;          abs->personarray[p].age = age;            //联系电话          cout << "请输入联系电话:" << endl;          cin >> number;          abs->personarray[p].number = number;            //家庭住址          cout << "请输入家庭住址:" << endl;            cin >> address;          abs->personarray[p].address = address;            cout << "修改成功" << endl;          system("pause");          //执行清屏操作          system("cls");      }      else      {          cout << "该联系人不存在!" << endl;          system("pause");          //执行清屏操作          system("cls");      }  }  //清空联系人  void empty(addressbook* abs) {      abs->m_size = 0;      cout << "通讯录已清空" << endl;      system("pause");      system("cls");  }    int main() {      //初始化通讯录      addressbook abs;      //初始化通讯录人数为0      abs.m_size = 0;        int flag = true;      int key = 0;      string name;      while (true)      {          showmenu();          cout << "请输入要操作的功能" << endl;          cin >> key;          switch (key)          {          case 1:              //先判断判断通讯录是否已满,在判断联系人是否已存在              //最后进行联系人添加操作addperson(addressbook *abs)              cout << "请输入联系人姓名" << endl;              cin >> name;              existsperson(&abs, name);              break;          case 2:              showperson(&abs);              break;          case 3:              deleteperson(&abs);              break;          case 4:              cout << "请输入联系人姓名" << endl;              cin >> name;              findperson(&abs, name);              system("pause");              //执行清屏操作              system("cls");              break;          case 5:              changeperson(&abs);              break;          case 6:              empty(&abs);              break;          case 0:              cout << "欢迎下次使用!" << endl;              system("pause");              return 0;              break;          default:              cout << "请输入正确的选项序号:" << endl;              break;          }      }        system("pause");        return 0;  }

以上就是c/c++开发分享C++实现简单的通讯录管理系统的全部内容,希望对大家的学习有所帮助,也希望大家多多支持<计算机技术网(www.ctvol.com)!!>。

需要了解更多c/c++开发分享C++实现简单的通讯录管理系统,都可以关注C/C++技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/1237747.html

(0)
上一篇 2022年9月10日
下一篇 2022年9月10日

精彩推荐