通讯录管理系统(C++)

系统需求

通讯录是一个可以记录亲人、好友信息的工具。

系统中需要实现的功能如下:

  • 添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人
  • 显示联系人:显示通讯录中所有联系人信息
  • 删除联系人:按照姓名进行删除指定联系人
  • 查找联系人:按照姓名查看指定联系人信息
  • 修改联系人:按照姓名重新修改指定联系人
  • 清空联系人:清空通讯录中所有信息
  • 退出通讯录:退出当前使用的通讯录

C++代码实现

#include <iostream>
#include<Windows.h>
using namespace std;

void menu();//功能菜单
void add();//添加联系人
void P();//显示联系人
int find();//查找联系人
void del();//删除联系人
void xiugai();//修改联系人
void qinkong();//清空联系人

int choice = -1;//用户选择----变量
int num = 0;//通讯录列表计数

struct mindan 
{
    string name;
    string sex;
    int age;
    string phone;
    string address;
};//通讯录名单存储结构体

struct mindan arr[1000];

int main()
{
    menu();
    while (1) 
    {
        cout << "请选择:";
        cin >> choice;//最开始的界面
        while (!(choice >= -1 && choice <= 6))
        {
            menu();
            cout << "输入错误请重新输入:" << endl;
            cin >> choice;
        }//用户菜单选择的防崩溃

        switch (choice)
        {
        case 1:
            add();
            break;
        case 2:
            P();
            break;
        case 3:
            del();
            break;
        case 4:
            find();
            break;
        case 5:
            xiugai();
            break;
        case 6:
            qinkong();
            break;
        case 0:
            cout << "感谢您的使用" << endl;
            return 0;
            break;
        case -1:
            menu();
            break;
        default:
            break;
        }
    }
    return 0;
}

void menu()
{
    system("cls");
    cout << "****************************" << endl;
    cout << "      通讯录管理系统" << endl;
    cout << "1.添加联系人" << endl;
    cout << "2.显示联系人" << endl;
    cout << "3.删除联系人" << endl;
    cout << "4.查找联系人" << endl;
    cout << "5.修改联系人" << endl;
    cout << "6.清空联系人" << endl;
    cout << "0.退出通讯录" << endl;
    cout << "-1.清屏" << endl;
    cout << "****************************" << endl;
}

void add()
{
    cout << "请输入" << "\n" << "姓  名:";
    cin >> arr[num].name;
    cout << "性  别:";
    cin >> arr[num].sex;
    cout << "年  龄:";
    cin >> arr[num].age;
    cout << "手机号:";
    cin >> arr[num].phone;
    cout << "地  址:";
    cin >> arr[num].address;
    num++;
    cout << "添加成功" << endl;
}

void P()
{ 
    if (num == 0)
    {
        cout << "联系人为空" << endl;
    }
    else
    {
        for (int i = 0; i < num; i++)
        {
            cout << i + 1 << endl;
            cout << "姓名:" << arr[i].name << endl;
            cout << "性别:" << arr[i].sex << endl;
            cout << "年龄:" << arr[i].age << endl;
            cout << "手机号:" << arr[i].phone << endl;
            cout << "地址:" << arr[i].address << endl;
            cout << "\n";
        }
    }

}

int find()
{
    int a = 0;
    int f = -1;
    string fff;
    if (num == 0)
    {
        cout << "联系人为空" << endl;
    }
    else
    {
        cout << "请输入联系人姓名:";
        cin >> fff;
        for (int i = 0; i < num; i++)
        {
            if (arr[i].name == fff)
            {
                a++;
                cout << "第" << a << "个" << endl;
                cout << "姓名:" << arr[i].name << endl;
                cout << "性别:" << arr[i].sex << endl;
                cout << "年龄:" << arr[i].age << endl;
                cout << "手机号:" << arr[i].phone << endl;
                cout << "地址:" << arr[i].address << endl;
                f = i;
            }
        }
        if (a == 0)
        {
            cout << "未找到此联系人" << endl;
        }
    }
    return f;
}

void del()
{
    if (num == 0)
    {
        cout << "联系人为空" << endl;
    }
    else
    {
        int i = find();
        if (i != -1)
        {
            for (; i < num; i++)
            {
                arr[i] = arr[i + 1];
            }
            num--;
            cout << "删除成功!" << endl;
        }
    }
}

void xiugai()
{
    int i = find();
    if (i != -1)
    {
        cout << "请输入" << "\n" << "姓  名:";
        cin >> arr[i].name;
        cout << "性  别:";
        cin >> arr[i].sex;
        cout << "年  龄:";
        cin >> arr[i].age;
        cout << "手机号:";
        cin >> arr[i].phone;
        cout << "地  址:";
        cin >> arr[i].address;
        cout << "修改成功" << endl;
    }
}

void qinkong()
{
    num = 0;
    cout << "清空联系人成功!" << endl;
}

总结

这是一个简单的C++实现通讯录增删查改的代码,欢迎各位大佬的点赞、评论和收藏
欢迎微信搜索关注【E O F】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wechannn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值