如何透過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 編程,並成功開發一個實用的通訊錄程式!
以上是如何透過C++編寫一個簡單的通訊錄程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!