功能描述:
 实现添加联系人功能,联系人上限为1000人,联系人信息包括(姓名、性别、年龄、联系电话、家庭住址)
 添加联系人实现步骤:
 ●设计联系人结构体
 ●设计通讯录结构体
 ●main函数中创建通讯录
 ●封装添加联系人函数
 ●测试添加联系人功能
1.1,设计联系人结构体
//联系人结构体
struct Person{string m_Name; //姓名int m_Sex; //性别: 1男2女int m_Age; //年龄string m_Phone; //电话string m_Addr; //住址
};
1.2设计通讯录结构体
 设计时候可以在通讯录结构体中,维护-个容量为1000的存放联系人的数组,并记录当前通讯录中联系人数量
 设计如下:
#define MAX 1000 //最大人数
//通讯录结构体
struct Addressbooks
{struct Person personArray[MAX]; // 通讯录中保存的联系人数组int m_Size; //通讯录中人员个数
};1.3,main函数中创建通讯录
int main() {//创建通讯录结构体变量Addressbooks abs;//初始化通讯录中当前人员个数abs.m_Size = 0;int select = 0;//创建用户选择输入菜单的变量while (true){showMenu();cin >> select;switch (select){case 1:            //1、添加联系人addPerson(&abs);  //利用地址传递可以修饰形参break;case 2:            //2、显示联系人break;case 3:            //3、删除联系人break;case 4:            //4、查找联系人break;case 5:            //5、修改联系人break;case 6:            //6、清空联系人break;case 0:            //0、退出通讯录cout << "欢迎下次使用" << endl;system("pause");return 0;break;default:break;}}system("pause");}1.4、封装添加联系人函数
//添加联系人
void addPerson(Addressbooks * p) {//先判断通讯录是不是已经满了,满了不在添加if (p->m_Size == MAX) {cout << "通讯录已经满了" << endl;return;}else {//具体添加联系人//姓名string name;cout << "请输入姓名: " << endl;cin >> name;p->personArray[p->m_Size].m_Name = name;//性别cout << "请输入性别 :" << endl;cout << "1 ---男" << endl;cout << "2 ---女" << endl;int sex = 0;while (true){//如果输入的是1或者2可以退出循环,因为输入的是正确值// 如果输入有误,重新输入[cin >> sex;if (sex == 1 || sex == 2) {p->personArray[p->m_Size].m_Sex = sex;break;}cout << "输入有误请重新输入" << endl;}//年龄cout << "请输入年龄:" << endl;int age = 0;cin >> age;p->personArray[p->m_Size].m_Age = age;//电话cout << "请输入联系电话:"<< endl;string phone;cin >> phone;p->personArray[p->m_Size].m_Phone = phone;//住址cout << "请输入家庭住址 : " << endl;string address;cin >> address;p->personArray[p->m_Size].m_Addr = address;//更新通讯录人数p->m_Size++;cout << "添加成功" << endl;}}1.5、测试添加联系人功能

添加成功之后这个屏幕有很多菜单列表:
我们需要清屏:
system("pause");//请按任意键继续
system("cls");//清屏 
 
