Heim  >  Artikel  >  Backend-Entwicklung  >  Wie schreibe ich ein einfaches Adressbuchprogramm in C++?

Wie schreibe ich ein einfaches Adressbuchprogramm in C++?

PHPz
PHPzOriginal
2023-11-02 17:05:061290Durchsuche

Wie schreibe ich ein einfaches Adressbuchprogramm in C++?

Wie schreibe ich ein einfaches Adressbuchprogramm mit C++?

Einführung:

In der modernen Gesellschaft ist das Adressbuch ein gängiges Werkzeug zum Speichern und Verwalten grundlegender Informationen persönlicher Kontakte, wie Namen, Telefonnummern, Adressen usw. In diesem Artikel erfahren Sie im Detail, wie Sie mit C++ ein einfaches Adressbuchprogramm schreiben.

Text:

Schritt 1: Definieren Sie die Struktur der Adressbucheinträge

Zuerst müssen wir eine Struktur definieren, um jeden Eintrag im Adressbuch darzustellen. Diese Struktur kann Felder wie Name, Telefonnummer und Adresse enthalten. Beispielsweise können wir mit dem folgenden Code eine Struktur namens „AddressBookEntry“ definieren:

struct AddressBookEntry {
    std::string name;
    std::string phoneNumber;
    std::string address;
};

Schritt 2: Grundfunktionen des Adressbuchprogramms implementieren

Als nächstes müssen wir einige Grundfunktionen für den Betrieb des Adressbuchs implementieren, darunter Hinzufügen neuer Einträge, Suchen von Einträgen, Aktualisieren von Einträgen und Löschen von Einträgen und andere Funktionen. Wir können C++-Containerklassen verwenden, um Adressbucheinträge wie Vektoren oder Listen zu speichern. Das Folgende ist ein einfaches Implementierungsbeispiel:

#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;
}

Fazit:

Durch die oben genannten Schritte haben wir erfolgreich ein einfaches Adressbuchprogramm in C++ geschrieben. Dieses Programm kann neue Adressbucheinträge hinzufügen, vorhandene Einträge suchen, aktualisieren und löschen und das gesamte Adressbuch in einem leicht lesbaren Format anzeigen. Sie können es je nach Bedarf weiter ausbauen und verbessern.

Ich hoffe, dieser Artikel kann Ihnen dabei helfen, mit der C++-Programmierung zu beginnen und erfolgreich ein praktisches Adressbuchprogramm zu entwickeln!

Das obige ist der detaillierte Inhalt vonWie schreibe ich ein einfaches Adressbuchprogramm in C++?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn