这是一个简单的通讯录管理程序,使用结构体和数组来存储联系人信息。程序提供了添加联系人、显示联系人、删除联系人、查找联系人、修改联系人和清空联系人等功能。
核心部分包括以下几个函数:
- `addPerson`:用于添加联系人信息。首先检查通讯录是否已满,若已满则提示无法添加;否则依次输入姓名、性别、年龄、电话和住址,并将信息存储在通讯录中。
- `showPerson`:用于显示所有联系人信息。遍历通讯录中的联系人信息,并逐个输出姓名、性别、年龄、电话和住址。
- `isExist`:用于判断指定姓名的联系人是否存在于通讯录中。遍历通讯录中的联系人信息,若存在则返回联系人所在索引,否则返回-1。
- `deletePerson`:用于删除指定姓名的联系人。输入要删除的联系人姓名,调用`isExist`函数判断联系人是否存在,若存在则将该联系人后面的信息向前移动一位,并减小通讯录大小。
- `findPerson`:用于查找指定姓名的联系人并显示其信息。输入要查找的联系人姓名,调用`isExist`函数判断联系人是否存在,若存在则输出该联系人的姓名、性别、年龄、电话和住址。
- `modifyPerson`:用于修改指定姓名的联系人信息。输入要修改的联系人姓名,调用`isExist`函数判断联系人是否存在,若存在则依次输入新的姓名、性别、年龄、电话和住址,并更新通讯录中该联系人的信息。
- `cleanPerson`:用于清空通讯录。将通讯录大小设置为0,即清空所有联系人信息。
在主函数中,通过一个无限循环来实现菜单选择功能,根据用户输入的选择调用相应的函数来执行对应的操作。当用户选择退出通讯录时,程序会输出欢迎提示并结束运行。
这个通讯录管理程序可以帮助用户管理联系人信息,进行添加、查找、修改和删除等操作,方便快捷。
#include<iostream>
#include<string>
#define MAX 1000
using namespace std;
struct Person
{
string m_Name;
int m_Sex;//1是男,2是女
int m_Age;
string m_Phone;
string m_Addr;
};
struct Addressbooks
{
struct Person personArray[MAX];
int m_Size;
};
void addPerson(Addressbooks* abs)
{
if (abs->m_Size == MAX)
{
cout << "通讯录已经满了,无法添加! "