面向对象的通讯录系统C++

今天复习c++,想起来自己努力写了那么久的通讯录系统居然没发过博客,虽然写的不好,但还是想发上来留个纪念。

代码主要运用面向对象的设计思想,能够完成以下功能:
1.添加联系人
2.删除联系人
3.修改联系人信息
4.查询某一联系人信息
5.显示联系人信息
6.完成联系人信息的移动/复制
其中,联系人信息的移动与复制可以实现以下功能:
1.将手机卡联系人移动到手机中
2.将手机联系人移动到手机卡中
3.将手机卡联系人复制到手机中
4.将手机联系人复制到手机卡中

//小温的通讯录系统
#include<iostream>
#include<fstream>
#include<cstdio>
#include<iomanip>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
class id_person;
class book;
class menu;
class phone_book;
class id_book;
class user;
class phone_person {
private:
   string name, number;
public:
    phone_person(string a = "姓名", string b = "电话号码") :name(a), number(b) {}
    void set_name(string a)
    {
        name = a;
    }
    void set_number(string b)
    {
        number = b;
    }
    void modify_name(string a)
    {
        name = a;
    }
    void modify_number(string b)
    {
        number = b;
    }
    friend istream& operator >>(istream& in, phone_person& A)
    {
        in >> A.name >> A.number;
        return in;
    }
    friend ostream& operator <<(ostream& out, phone_person& A)
    {
        out << setw(10) << A.name  << setw(15) << A.number << endl;
        return out;
    }
    bool operator ==(phone_person& A)
    {
        if (name == A.name && number == A.number) return true;
        else return false;
    }
    phone_person operator =(phone_person& A)
    {
        phone_person P;
        P.name = A.name;
        P.number = A.number;
        return P;
    }
    friend class id_person;
    friend class book;
    friend class menu;
    friend class phone_book;
    friend class id_book;
    friend class user;
    friend istream& operator >>(istream& in, id_person& A);
    friend ostream& operator <<(ostream& out, id_person& A);
};
//小温的通讯录系统
class id_person :public phone_person {
private:
    string address, QQ;
public:
    id_person(string a = "姓名", string b = "电话号码", string c = "地址", string d = "QQ号码") :phone_person(a, b), address(c), QQ(d) {}
    void set_address(string a)
    {
        address = a;
    }
    void set_QQ(string b)
    {
        QQ = b;
    }
    void modify_address(string a)
    {
        address = a;
    }
    void modify_QQ(string b)
    {
        QQ = b;
    }
    friend istream& operator >>(istream& in, id_person& A)
    {
        in >> A.name >> A.number >> A.address >> A.QQ;
        return in;
    }
    friend ostream& operator <<(ostream& out, id_person& A)
    {
        out <<setw(10)<<A.name <<setw(15)<< A.number <<setw(20)<<A.address <<setw(15)<< A.QQ << endl;
        return out;
    }
    bool operator ==(id_person& A)
    {
        if (name == A.name && number == A.number && address == A.address && QQ == A.QQ) return true;
        else return false;
    }
    friend class phone_person;
    friend class book;
    friend class menu;
    friend class phone_book;
    friend class id_book;
    friend class user;
};
//小温的通讯录系统
class book {
public:
    virtual void add() = 0;
    virtual bool search_Delete(string str) = 0;
    virtual void Delete(string str) = 0;
    virtual void display() = 0;
    virtual bool search_correct(string str) = 0;
    virtual void correct(string str,string str1,string str2) = 0;
    virtual bool search_search(string str) = 0;
    virtual void search(string str) = 0;
    virtual void change_num(int a) = 0;
};
class phone_book :public book {
private:
    phone_person A[1005], P;
public:
    int phone_num = 1, i, j, init;
    string str, filename, name, number,str1,str2;
    phone_book();
    ~phone_book();
    void add()
    {
        cout << "请输入您想要增添的手机联系人的姓名及电话号码:" << endl;
        cin >> P;
        for (i = 1;i <= phone_num;i++)
        {
            if (A[i].number == P.number) break;
        }
        if (i == phone_num + 1)
        {
            if(phone_num!=1)
                ++phone_num;
            A[phone_num].name=P.name;
            A[phone_num].number = P.number;
            cout << "添加成功!" << endl;
        }
        else
            cout << "添加失败,联系人已经存在!" << endl;
    }
    bool search_Delete(string str)
    {
        for (i = 1; i <= phone_num; i++)
            if (A[i].number == str) break;
        if (i == phone_num + 1) return false;
        else return true;
    }
    void Delete(string str)
    {
        for (i = 1; i <= phone_num; i++)
            if (A[i].number == str)
            {
                for (j = i; j <= phone_num - 1; j++)
                {
                    A[j].name = A[j + 1].name;
                    A[j].number = A[j + 1].number;
                }
               phone_num--;
            }
    }
    //小温的通讯录系统
    void display()
    {
        cout << "下面显示所有手机联系人信息:" << endl;
        if (phone_num == 1 && A[1].name == "姓名"||phone_num==0) cout << "无手机联系人信息" << endl;
        else
        {
            cout<<setw(10)<<"姓名"<<setw(15)<<"联系电话"<<endl;
            for (i = 1; i <= phone_num; i++)
            cout << A[i];
        }
    }
    bool search_correct(string str)
    {
        for (i = 1; i <= phone_num; i++)
            if (str == A[i].number)
                break;
        if (i == phone_num + 1)
            return false;
        else return true;
    }
    void correct(string str,string str1,string str2)
    {
        for (i = 1;i <= phone_num;i++)
            if (str == A[i].number)
            {
                A[i].modify_name (str1);
                A[i].modify_number(str2);
            }
    }
    bool search_search(string str)
    {
        for (i = 1; i <= phone_num; i++)
            if (str == A[i].name) break;
        if (i == phone_num + 1) return false;
        else return true;
    }
    void search(string str)
    {
        for (i = 1; i <= phone_num; i++)
            if (str == A[i].name)
                cout << "手机联系人:   "<<A[i];
    }
    void change_num(int a)
    {
        phone_num = a;
    }
    friend class id_book;
    friend class user;
};
phone_book::phone_book() {
    ifstream instuf("d:\\books.txt", ios::in);
    instuf.seekg(0, ios::beg);
    phone_num = 1;
    if (!instuf)
    {
        cerr << "文件无法打开!" << endl;
        abort();
    }
    instuf >> A[1].name >> A[1].number;
    while (!instuf.eof())
    {
        phone_num++;
        instuf >> A[phone_num].name;
        instuf >> A[phone_num].number;
    }
    phone_num--;
    instuf.close();
}
//小温的通讯录系统
phone_book::~phone_book() {
    ofstream outstuf;
    outstuf.open("d:\\books.txt", ios::out);
    if (!outstuf)
    {
        cout << "文件无法打开!" << endl;
        abort();
    }
    for (i = 1; i <= phone_num; i++)
        outstuf << A[i];
    outstuf.close();
}
class id_book :public book {
private:
    id_person B[1005], T;
public:
    int id_num = 0, i, j, init;
    string str, name, number, address, QQ,str1,str2;
    id_book();
    ~id_book();
    void add()
    {
        cout << "请输入您想要增添的手机联系人的姓名,电话号码,地址及QQ号码:" << endl;
        cin >> T;
        for (i = 1;i <= id_num;i++)
        {
            if (B[i].number == T.number) break;
        }
        if (i == id_num + 1)
        {
            if (id_num != 1)
                ++id_num;;
            B[id_num].name = T.name;
            B[id_num].address = T.address;
            B[id_num].QQ = T.QQ;
            B[id_num].number = T.number;
            cout << "添加成功!" << endl;
        }
        else cout << "添加失败,该电话号码已经存在!" << endl;
    }
    //小温的通讯录系统
    bool search_Delete(string str)
    {
        for (i = 1; i <= id_num; i++)
            if (B[i].number == str) break;
        if (i == id_num + 1) return false;
        else return true;
    }
    void Delete(string str)
    {
        init = id_num;
        for (i = 1; i <= id_num; i++)
            if (B[i].number == str)
            {
                for (j = i; j <= id_num - 1; j++)
                {
                    B[j].name = B[j + 1].name;
                    B[j].number = B[j + 1].number;
                    B[j].address = B[j + 1].address;
                    B[j].QQ = B[j + 1].QQ;
                }
                id_num--;
            }
    }
    void display()
    {
        cout << "下面显示所有手机卡联系人信息:" <<endl;
        if ((id_num == 1 && B[1].name == "姓名")||id_num==0) cout << "无手机卡联系人信息" << endl;
        else
        {
            cout<<setw(10)<<"姓名"<<setw(15)<<"联系电话"<<setw(20)<<"家庭住址"<<setw(15)<<"QQ号码"<<endl;
            for (i = 1; i <= id_num; i++)
            cout << B[i];
        }
    }
    //小温的通讯录系统
    bool search_correct(string str)
    {
        for (i = 1; i <= id_num; i++)
            if (str == B[i].number)
                break;
        if (i == id_num + 1)
            return false;
        else return true;
    }
    void correct(string str,string str1,string str2)
    {
        for (i = 1;i <= id_num;i++)
            if (str == B[i].number)
            {
                B[i].modify_name(str1);
                B[i].modify_number(str2);
            }
    }
    bool search_search(string str)
    {
        for (i = 1; i <= id_num; i++)
            if (str == B[i].name) break;
        if (i == id_num + 1) return false;
        else return true;
    }
    void search(string str)
    {
        for (i = 1; i <= id_num; i++)
            if (str == B[i].name)
                cout <<"手机卡联系人:    "<< B[i];
    }
    void change_num(int a)
    {
        id_num = a;
    }
    friend class user;
};
//小温的通讯录系统
id_book::id_book() {
    ifstream instuf("d:\\id_book.txt", ios::in);
    instuf.seekg(0, ios::beg);
    if (!instuf)
    {
        cout << "文件无法打开!" << endl;
        abort();
    }
    id_num = 1;
    instuf >> B[1].name >> B[1].number>>B[1].address>>B[1].QQ;
    while (!instuf.eof())
    {
        id_num++;
        instuf >> B[id_num].name;
        instuf >> B[id_num].number;
        instuf >> B[id_num].address;
        instuf >> B[id_num].QQ;
    }
    id_num--;
    instuf.close();
}
id_book::~id_book() {
    ofstream outstuf;
    outstuf.open("d:\\id_book.txt", ios::out);
    if (!outstuf)
    {
        cout << "文件无法打开!" << endl;
        abort();
    }
    for (i = 1; i <= id_num; i++)
        outstuf << B[i];
    outstuf.close();
}
class user {
public:
    int i, j, init1, init2,index;
    bool flag1, flag2;
    phone_book a;
    id_book b;
    book* p;
    string str,str1,str2;
    void user_add()
    {
        cout << "请输入您想添加的通讯簿人员类型(请输入1代表手机或2代表手机卡)" << endl;
        cin >> index;
        if (index==1)
        {
            p = &a;
            p->add();
        }
        else if (index==2)
        {
            p = &b;
            p->add();
        }
        else
            cout << "输入错误!" << endl;
    }
    void user_Delete()
    {
        cout << "请输入您想删除的联系人电话号码" << endl;
        cin >> str;
        p = &a;
        flag1=p->search_Delete(str);
        p = &b;
        flag2=p->search_Delete(str);
        if (flag1 || flag2)
        {
            if (flag1)
            {
                p = &a;
                p->Delete(str);
            }
            if (flag2)
            {
                p = &b;
                p->Delete(str);
            }
            cout << "删除成功" << endl;
        }
        else cout << "无此联系人信息" << endl;
    }
    void user_correct()
    {
        cout << "请输入您想修改的联系人电话号码" << endl;
        cin >> str;
        p = &a;
        flag1=p->search_correct(str);
        p = &b;
        flag2=p->search_correct(str);
        if (flag1 || flag2)
        {
            cout << "请输入修改后的联系人姓名及联系电话" << endl;
            cin >> str1 >> str2;
            if (flag1 )
            {
                p = &a;
                p->correct(str,str1, str2);
            }
            if (flag2)
            {
                p = &b;
                p->correct(str,str1, str2);
            }
            cout << "修改成功!" << endl;
        }
        else
            cout << "无此人员信息!" << endl;
    }
    //小温的通讯录系统
    void user_display()
    {
        cout << "请输入您想显示的通讯簿人员类型(请输入1代表手机,2代表手机卡或3代表全部显示)" << endl;
        cin >> index;
        if (index==1)
        {
            p = &a;
            p->display();
        }
        else if (index==2)
        {
            p = &b;
            p->display();
        }
        else if (index == 3)
        {
            p = &a;
            p->display();
            p = &b;
            p->display();
        }
        else
            cout << "输入错误!" << endl;
    }
    void user_search()
    {
        cout << "请输入您想查询的通讯簿人员姓名" << endl;
        cin >> str;
        p = &a;
        flag1=p->search_search(str);
        p = &b;
        flag2=p->search_search(str);
        if (flag1 || flag2)
        {
            if (flag1)
            {
                p = &a;
                p->search(str);
            }
            if (flag2)
            {
                p = &b;
                p->search(str);
            }
        }
        else cout << "无此联系人信息!" << endl;
    }
    //小温的通讯录系统
    void moveid_phone()///将手机卡联系人移动到手机中
    {
        init1 = a.phone_num;
        init2 = b.id_num;
        for (i = 1;i <= b.id_num;i++)
        {
            if (init1 >= 1000)
            {
                cout << "超出容量限制" << endl;
                break;
            }
            for (j = 1;j <= init1;j++)
                if (a.A[j].name == b.B[i].name && a.A[j].number == b.B[i].number) break;
            if (j == init1 + 1)
            {
                init1++;
                a.A[init1].name = b.B[i].name;
                a.A[init1].number = b.B[i].number;
            }
            else continue;
        }
        p = &a;
        p->change_num(init1);
        p = &b;
        p->change_num(0);
        cout << "已成功将手机卡中的存储的联系人的信息移动到手机中!" << endl;
    }
    void movephone_id()///将手机联系人移动到手机卡中
    {
        init1 = a.phone_num;
        init2 = b.id_num;
        for (i = 1;i <= a.phone_num;i++)
        {
            if (init2 >= 1000)
            {
                cout << "超出容量限制" << endl;
                break;
            }
            for (j = 1;j <= init2;j++)
            {
                if (b.B[j].name == a.A[i].name && b.B[j].number == a.A[i].number) break;
            }
            if (j == init2 + 1)
            {
                init2++;
                b.B[init2].name = a.A[i].name;
                b.B[init2].number = a.A[i].number;
                b.B[init2].address = "未输入";
                b.B[init2].QQ = "未输入";
            }
            else continue;
        }
            p = &a;
            p->change_num(0);
            p = &b;
            p->change_num(init2);
            cout << "已成功将手机中的存储的联系人的信息移动到手机卡中!" << endl;
    }
    //小温的通讯录系统
    void copyid_phone()///将手机卡联系人复制到手机中
    {
        init1 = a.phone_num;
        for (i = 1;i <= b.id_num;i++)
        {
            if (init1 >= 1000)
            {
                cout << "超出容量限制" << endl;
                break;
            }
            for (j = 1;j <= init1;j++)
                if (a.A[j].name == b.B[i].name && a.A[j].number == b.B[i].number) break;
            if (j == init1 + 1)
            {
                init1++;
                a.A[init1].name = b.B[i].name;
                a.A[init1].number = b.B[i].number;
            }
            else continue;
        }
        p = &a;
        p->change_num(init1);
        cout << "已成功将手机卡中的存储的联系人的信息复制到手机中!" << endl;
    }
    void copyphone_id()///将手机联系人复制到手机卡中
    {
        init1 = a.phone_num;
        init2 = b.id_num;
        for (i = 1;i <= a.phone_num;i++)
        {
            if (init2 >= 1000)
            {
                cout << "超出容量限制" << endl;
                break;
            }
            for (j = 1;j <= init2;j++)
            {
                if (b.B[j].name == a.A[i].name && b.B[j].number == a.A[i].number) break;
            }
            if (j == init2 + 1)
            {
                init2++;
                b.B[init2].name = a.A[i].name;
                b.B[init2].number = a.A[i].number;
                b.B[init2].address = "未输入";
                b.B[init2].QQ = "未输入";
            }
            else continue;
            p = &b;
            p->change_num(init2);
        }
        cout << "已成功将手机中的存储的联系人的信息移动到手机卡中!" << endl;
    }
};
class menu {
public:
    string str;
    user P;
    void Display()
    {
        cout << "------------------------------------------------------------------------" << endl;
        cout << "----------------------------通讯录系统总菜单----------------------------" << endl;
        cout << "------------------------------------------------------------------------" << endl;
        cout << "       1.添加联系人                     2.删除联系人                    " << endl;
        cout << "       3.修改联系人信息                 4.查询某一联系人信息            " << endl;
        cout << "       5.显示联系人信息                 6.完成联系人信息的移动/复制     " << endl;
        cout << "                          0.结束程序并保存结果                          " << endl;
        cout << "------------------------------------------------------------------------" << endl;
    }
    void menu_add()
    {
        P.user_add();
    }
    void menu_Delete()
    {
        P.user_Delete();
    }
    void menu_correct()
    {
        P.user_correct();
    }
    void menu_search()
    {
        P.user_search();
    }
    void menu_display()
    {
        P.user_display();
    }
    void menu_moveid_phone()
    {
        P.moveid_phone();
    }
    void menu_movephone_id()
    {
        P.movephone_id();
    }
    void menu_copyid_phone()
    {
        P.copyid_phone();
    }
    void menu_copyphone_id()
    {
        P.copyphone_id();
    }
};
int main()
{
    menu A;
    cout << "------------------------欢迎来到小温的通讯录系统------------------------" << endl;
    A.Display();
    int a,b;
    char ch;
    while (cin >> a)
    {
        system("cls");
        if (a == 0)
        {
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << "------------------------------------------------------------------------" << endl;
            cout << "                   感谢使用小温的通讯录系统,我们下次见!" << endl;
            cout << "------------------------------------------------------------------------" << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            cout << endl;
            break;
        }
        switch (a)
        {
            case 1: {A.menu_add();break;}
            case 2: {A.menu_Delete();break;}
            case 3: {A.menu_correct();break;}
            case 4: {A.menu_search();break;}
            case 5: {A.menu_display();break;}
            case 6:
            {
                cout << "                      请输入您想移动/复制的具体信息:                 " << endl;
                cout << "       1.将手机卡联系人移动到手机中     2.将手机联系人移动到手机卡中  " << endl;
                cout << "       3.将手机卡联系人复制到手机中     4.将手机联系人复制到手机卡中  " << endl;
                cin >> b;
                switch (b)
                {
                    case 1: {A.menu_moveid_phone();break;}
                    case 2: {A.menu_movephone_id();break;}
                    case 3: {A.menu_copyid_phone();break;}
                    case 4: {A.menu_copyphone_id();break;}
                }
            }
        }
        system("pause");
        system("cls");
        A.Display();
    }
    return 0;
}
  • 10
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
程序包含如下功能: (1)Add Record (增加记录) 提示输入个字段。一次输入一个人的数据。新记录加入后,通讯录按指定的排序顺序排序。初始时,默认按“姓名”排序;选择“8.Sort”后可修改排序顺序为按“办公室”排序。指定一种排序方法后,就一直保持此排序方法,直到重新指定。“8.Sort”可在两种排序方法之间切换。 (2)Delete Record (删除记录) 输入待删除的姓名,显示该姓名下的所有信息,让用户确认是否要删除。 (3)Display All Record(显示所有记录) 按顺序显示所有记录,每显示10条数据,暂停,用户按键继续。 (4)Query(按姓名查找并显示一个记录) 输入姓名,显示该姓名下的所有信息。 (5)Modify Record(按姓名查找,想、修改一个记录) 用户输入一个姓名,系统显示改下名下的所有信息,同时显示子菜单,用户按子菜单提示,指定修改哪一个数据项。 子菜单如下: (1)Modify Name//修改姓名 (2)Modify Office Phone//修改办公室号码 (3) Modify Home Phone//修改住宅电话 (4) Modify Mobile Phone//修改手机号码 (5) Modify Email//修改Email地址 Choice: 若修改时当前排序字段(“姓名”或“办公室电话”),程序内部调用排序程序重新排序; (6) Add from a Text File(从正文文件中批量添加数据到库表中) (7)Write to a Text File(将库表中数据写入正文文件) (8)Sort(排序) (9)Set Password (设置密码) 用户选择该选项是可以设置一个密码,改密码保存在addrilist.dat中,用户下次开始运行程序,需要从二进制文件addrilist.dat中加载数据,如果时其他用户则无法从addrilist.dat中加载数据。可以为addrilist.dat中的数据保密。不选择时系统保持初始密码0。 (10)Quit(退出系统)进行保存数据的内部操作。将数据写入addrilist.dat中保存起来
### 回答1: 通讯录管理系统是一种面向对象的C语言程序,该程序旨在帮助用户管理通讯录中的联系人信息。 在通讯录管理系统中,可以创建联系人对象,每个联系人对象包含姓名、电话号码、电子邮件地址等属性。用户可以通过系统提供的菜单界面进行以下操作: 1. 添加联系人:用户可以输入联系人的姓名、电话号码和电子邮件地址,系统会根据输入的信息创建一个新的联系人对象,并将该对象保存在通讯录中。 2. 删除联系人:用户可以根据联系人的姓名或电话号码查找到对应的联系人对象,并将该对象从通讯录中删除。 3. 修改联系人:用户可以根据联系人的姓名或电话号码查找到对应的联系人对象,并可以对该对象的属性进行修改。 4. 查找联系人:用户可以根据联系人的姓名或电话号码查找到对应的联系人对象,并可以查看该对象的所有属性。 5. 显示通讯录系统会将通讯录中的所有联系人对象按照一定的格式显示在屏幕上,方便用户浏览和管理。 通过使用面向对象的编程方法,可以将通讯录管理系统的功能模块化,每个联系人对象都有自己的属性和方法,使得系统更加易于维护和扩展。 在C语言中,可以使用结构体来定义联系人对象,并使用指针进行对联系人对象的操作和管理。同时,可以使用链表等数据结构来存储和组织联系人对象,实现通讯录的自动扩容和高效查找。 总之,面向对象的C语言通讯录管理系统可以帮助用户方便地管理联系人信息,提高工作效率。 ### 回答2: 通讯录管理系统是一种用来管理联系人信息的软件系统面向对象是一种软件开发方法论,它把系统中的各个部分(对象)进行封装,通过各个对象之间的交互来完成系统中的功能。在通讯录管理系统中,可以使用面向对象思想来设计和实现这个系统。 首先,可以创建一个Contact来表示联系人对象,这个可以包含联系人的姓名、电话号码、电子邮箱等属性。然后,可以创建一个AddressBook来表示通讯录对象,这个可以包含一个包含多个Contact对象的列表,可以实现添加联系人、查找联系人、删除联系人等功能。 在AddressBook中,可以通过使用数组、链表或者其他数据结构来保存Contact对象,使用面向对象的封装性来保护联系人信息,只提供必要的接口方法供外部使用。比如,可以提供addContact()方法来添加联系人,deleteContact()方法来删除联系人,findContact()方法来查找联系人。 另外,可以在AddressBook中添加一些其他的功能,比如导入联系人信息、导出联系人信息、按姓名排序联系人等。这些功能可以通过使用面向对象的继承性和多态性来实现。比如,可以创建一个ImportContacts来继承AddressBook,实现导入联系人信息的功能;创建一个ExportContacts来继承AddressBook,实现导出联系人信息的功能;创建一个SortContacts来继承AddressBook,实现按姓名排序联系人的功能。 使用面向对象思想,可以更好地组织和管理通讯录管理系统的代码,使其更加模块化、灵活和可扩展。同时,面向对象的编程方法还可以提高代码的复用性和可维护性,使开发和维护这个系统变得更加方便和高效。 ### 回答3: 通讯录管理系统一个面向对象的C语言程序,可以用于管理个人或组织的联系人信息。该系统主要包括联系人的添加、删除、修改、查询等功能。 首先,我们需要定义一个Contact结构体来表示联系人的信息,包括姓名、电话号码、邮箱等。通过结构体的定义,可以方便地管理联系人信息。 接下来,可以定义一个ContactArray结构体来表示联系人列表,其中包括一个Contact数组和一个表示联系人数目的变量。通过ContactArray结构体,可以方便地对联系人进行增删改查操作。 系统的主要功能包括:添加联系人、删除联系人、修改联系人、查询联系人等。 在添加联系人功能中,可以通过用户输入联系人的姓名、电话号码、邮箱等信息,并将新联系人添加到ContactArray中。 在删除联系人功能中,可以通过用户输入联系人的姓名或电话号码等关键字,将匹配到的联系人从ContactArray中删除。 在修改联系人功能中,可以通过用户输入联系人的姓名或电话号码等关键字,将匹配到的联系人的信息进行修改,并更新到ContactArray中。 在查询联系人功能中,可以通过用户输入联系人的姓名或电话号码等关键字,将匹配到的联系人信息进行展示。 除了基本的增删改查功能以外,可以考虑添加其他功能,如将联系人信息保存到文件、从文件读取联系人信息等。 通过以上的功能设计,通讯录管理系统能够方便地管理联系人信息,提高了信息查询和修改的效率。同时,可以根据实际需求进行功能的扩展和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值