如何通過C++編寫一個簡單的地址簿程序?
引言:
在現代社會中,地址簿是一種常見的工具,用于存儲和管理個人聯系人的基本信息,如姓名、電話號碼和地址等。在本文中,我們將詳細介紹如何使用C++編寫一個簡單的地址簿程序。
正文:
步驟1:定義地址簿條目的結構
首先,我們需要定義一個結構來表示地址簿中的每個條目。這個結構可以包含姓名、電話號碼和地址等字段。例如,我們可以使用以下代碼定義一個名為“AddressBookEntry”的結構:
struct AddressBookEntry { std::string name; std::string phoneNumber; std::string address; };
登錄后復制
步驟2:實現地址簿程序的基本功能
接下來,我們需要實現一些基本功能來操作地址簿,包括添加新條目、查找條目、更新條目和刪除條目等功能。我們可以使用C++的容器類來存儲地址簿條目,比如vector或list。以下是一個簡單的實現示例:
#include <iostream> #include <vector> std::vector<AddressBookEntry> addressBook; // 存儲地址簿條目的全局變量 // 添加新條目 void addEntry() { AddressBookEntry entry; std::cout << "請輸入姓名:"; std::getline(std::cin, entry.name); std::cout << "請輸入電話號碼:"; std::getline(std::cin, entry.phoneNumber); std::cout << "請輸入地址:"; std::getline(std::cin, entry.address); addressBook.push_back(entry); std::cout << "新增條目成功! "; } // 查找條目 void findEntry() { std::string name; std::cout << "請輸入要查找的姓名:"; std::getline(std::cin, name); for (const auto& entry : addressBook) { if (entry.name == name) { std::cout << "姓名:" << entry.name << " "; std::cout << "電話號碼:" << entry.phoneNumber << " "; std::cout << "地址:" << entry.address << " "; return; } } std::cout << "未找到匹配的條目。 "; } // 更新條目 void updateEntry() { std::string name; std::cout << "請輸入要更新的姓名:"; std::getline(std::cin, name); for (auto& entry : addressBook) { if (entry.name == name) { std::cout << "請輸入新的電話號碼:"; std::getline(std::cin, entry.phoneNumber); std::cout << "請輸入新的地址:"; std::getline(std::cin, entry.address); std::cout << "更新條目成功! "; return; } } std::cout << "未找到匹配的條目。 "; } // 刪除條目 void deleteEntry() { std::string name; std::cout << "請輸入要刪除的姓名:"; std::getline(std::cin, name); for (auto it = addressBook.begin(); it != addressBook.end(); ++it) { if (it->name == name) { addressBook.erase(it); std::cout << "刪除條目成功! "; return; } } std::cout << "未找到匹配的條目。 "; } // 顯示地址簿 void displayAddressBook() { if (addressBook.empty()) { std::cout << "地址簿為空。 "; return; } for (const auto& entry : addressBook) { std::cout << "姓名:" << entry.name << " "; std::cout << "電話號碼:" << entry.phoneNumber << " "; std::cout << "地址:" << entry.address << " "; } } // 主菜單 void mainMenu() { std::cout << "1. 添加新條目 "; std::cout << "2. 查找條目 "; std::cout << "3. 更新條目 "; std::cout << "4. 刪除條目 "; std::cout << "5. 顯示地址簿 "; std::cout << "0. 退出程序 "; std::cout << "請選擇操作:"; } int main() { int choice; do { mainMenu(); std::cin >> choice; std::cin.ignore(); // 忽略輸入緩沖區中的換行符 std::cout << " "; switch (choice) { case 1: addEntry(); break; case 2: findEntry(); break; case 3: updateEntry(); break; case 4: deleteEntry(); break; case 5: displayAddressBook(); break; case 0: std::cout << "退出程序。 "; break; default: std::cout << "無效的選擇。 "; break; } std::cout << " "; } while (choice != 0); return 0; }
登錄后復制
結論:
通過以上步驟,我們已經成功地用C++編寫了一個簡單的地址簿程序。這個程序可以添加新的地址簿條目,查找、更新和刪除現有條目,并能以易讀的方式顯示整個地址簿。你可以根據需求進行進一步的擴展和改進。
希望本文能夠幫助你入門C++編程,并成功開發一個實用的地址簿程序!