21xrx.com
2025-04-28 14:29:38 Monday
文章检索 我的文章 写文章
C++通讯录代码实现
2023-07-03 22:23:17 深夜i     10     0
C++ 通讯录 代码 实现 program code

C++是一门强大的编程语言,它可以用来实现各种各样的应用程序。在日常生活中,人们经常需要使用通讯录来管理联系人信息。本文将介绍如何使用C++来实现通讯录代码。

首先,我们需要定义一个联系人结构体,包括联系人姓名、联系方式等信息。代码如下:

struct Contact
  string name;
  string phone;
  string email;
;

接下来,我们可以定义一个vector来存储所有联系人信息:

vector<Contact> contacts;

我们可以使用以下代码来添加新的联系人:

Contact c;
cout << "请输入联系人姓名:" << endl;
cin >> c.name;
cout << "请输入联系人电话:" << endl;
cin >> c.phone;
cout << "请输入联系人邮箱:" << endl;
cin >> c.email;
contacts.push_back(c);

我们还可以使用以下代码来遍历所有联系人信息:

for (int i = 0; i < contacts.size(); i++) {
  cout << "姓名:" << contacts[i].name << endl;
  cout << "电话:" << contacts[i].phone << endl;
  cout << "邮箱:" << contacts[i].email << endl;
}

除此之外,我们还可以添加一些其他功能,比如根据姓名查找联系人信息、删除某个联系人、修改某个联系人信息等等。完整代码如下:

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Contact
  string name;
  string phone;
  string email;
;
vector<Contact> contacts;
void addContact() {
  Contact c;
  cout << "请输入联系人姓名:" << endl;
  cin >> c.name;
  cout << "请输入联系人电话:" << endl;
  cin >> c.phone;
  cout << "请输入联系人邮箱:" << endl;
  cin >> c.email;
  contacts.push_back(c);
}
void listContacts() {
  if (contacts.empty())
    cout << "通讯录为空!" << endl;
    return;
  
  for (int i = 0; i < contacts.size(); i++) {
    cout << "姓名:" << contacts[i].name << endl;
    cout << "电话:" << contacts[i].phone << endl;
    cout << "邮箱:" << contacts[i].email << endl;
    cout << endl;
  }
}
void findContact() {
  if (contacts.empty())
    cout << "通讯录为空!" << endl;
    return;
  
  string name;
  cout << "请输入要查找的联系人姓名:" << endl;
  cin >> name;
  for (int i = 0; i < contacts.size(); i++) {
    if (contacts[i].name == name) {
      cout << "姓名:" << contacts[i].name << endl;
      cout << "电话:" << contacts[i].phone << endl;
      cout << "邮箱:" << contacts[i].email << endl;
      return;
    }
  }
  cout << "未找到该联系人!" << endl;
}
void deleteContact() {
  if (contacts.empty())
    cout << "通讯录为空!" << endl;
    return;
  
  string name;
  cout << "请输入要删除的联系人姓名:" << endl;
  cin >> name;
  for (vector<Contact>::iterator it = contacts.begin(); it != contacts.end(); ) {
    if (it->name == name) {
      it = contacts.erase(it);
    } else {
      ++it;
    }
  }
  cout << "联系人已删除!" << endl;
}
void updateContact() {
  if (contacts.empty())
    cout << "通讯录为空!" << endl;
    return;
  
  string name;
  cout << "请输入要修改的联系人姓名:" << endl;
  cin >> name;
  for (int i = 0; i < contacts.size(); i++) {
    if (contacts[i].name == name) {
      cout << "请输入新的电话:" << endl;
      cin >> contacts[i].phone;
      cout << "请输入新的邮箱:" << endl;
      cin >> contacts[i].email;
      cout << "联系人信息已更新!" << endl;
      return;
    }
  }
  cout << "未找到该联系人!" << endl;
}
void exitProgram() {
  cout << "程序已退出!" << endl;
  exit(0);
}
int main() {
  while (true) {
    cout << "请选择操作:" << endl;
    cout << "1. 添加联系人" << endl;
    cout << "2. 查看全部联系人" << endl;
    cout << "3. 查找联系人" << endl;
    cout << "4. 删除联系人" << endl;
    cout << "5. 修改联系人信息" << endl;
    cout << "6. 退出程序" << endl;
    int choice;
    cin >> choice;
    switch (choice) {
      case 1:
        addContact();
        break;
      case 2:
        listContacts();
        break;
      case 3:
        findContact();
        break;
      case 4:
        deleteContact();
        break;
      case 5:
        updateContact();
        break;
      case 6:
        exitProgram();
        break;
      default:
        cout << "无效操作!" << endl;
        break;
    }
  }
  return 0;
}

这些功能可以让通讯录更加方便、实用。通过C++实现通讯录代码,让我们可以更好地管理自己的联系人信息,提高生活、工作效率。

  
  

评论区