/*time:2020年9月22日
auther:wpp
*/
#include <iostream>
using namespace std;
#include <string>
#include <math.h>
#include <unistd.h>
#define MAX 1000
struct Person
{
string name;
int age;
string phone;
};
struct yellowpage
{
struct Person personArray[MAX];
int size;
};
//展示目录
void showMenu()
{
cout << "***********************" << endl;
cout << "*****1、添加联系人*****" << endl;
cout << "*****2、显示联系人*****" << endl;
cout << "*****3、删除联系人*****" << endl;
cout << "*****4、查找联系人*****" << endl;
cout << "*****5、修改联系人*****" << endl;
cout << "*****6、清空联系人*****" << endl;
cout << "*****0、退出通讯录*****" << endl;
cout << "***********************" << endl;
}
//添加联系人
void addperson(yellowpage *yp)
{
if (yp->size == MAX)
{
cout << "空间已满" << endl;
return;
}
else
{
cout << "姓名:" << endl;
string name1;
cin >> name1;
yp->personArray[yp->size].name = name1;
cout << "年龄:" << endl;
int age1;
cin >> age1;
yp->personArray[yp->size].age = age1;
cout << "号码:" << endl;
string number;
cin >> number;
yp->personArray[yp->size].phone = number;
cout << "导入完成!" << endl;
yp->size++;
}
}
// 显示联系人
void printinfo(yellowpage *yp)
{
if (yp->size == 0)
{
cout << "通讯录为空" << endl;
}
else
{
for (int i = 0; i < yp->size; i++)
{
cout << "年龄:" << yp->personArray[i].age << "\t";
cout << "姓名:" << yp->personArray[i].name << "\t";
cout << "电话:" << yp->personArray[i].phone << endl;
}
}
system("read -p 'Press Enter to continue...' var");
}
// 检测联系人是否存在,存在返回具体位置,不存在返回-1
int isexist(yellowpage *yp, string name)
{
for (int i = 0; i < yp->size; i++)
{
if (yp->personArray[i].name == name)
{
return i;
}
}
return -1;
}
// 删除通讯录中i位置的人
void dropperson(yellowpage *yp)
{
cout << "请输入要删除人的姓名:" << endl;
string name;
cin >> name;
if (isexist(yp, name))
{
cout << "查不到,爬!" << endl;
}
else
{
for (int i = isexist(yp, name); i < yp->size; i++)
{
yp->personArray[i] = yp->personArray[i + 1];
}
yp->size--;
cout << "删除成功!" << endl;
}
}
// 查找联系人
void selectperson(yellowpage *yp)
{
cout << "输入查找的姓名:" << endl;
string name;
cin >> name;
if (isexist(yp, name) == -1)
{
cout << "查无此人" << endl;
}
else
{
int ret = isexist(yp, name);
cout << "姓名" << yp->personArray[ret].name << "\t";
cout << "年龄" << yp->personArray[ret].age << "\t";
cout << "电话" << yp->personArray[ret].phone << endl;
}
system("read -p 'Press Enter to continue...' var");
}
// 修改联系人
void alterperson(yellowpage *yp)
{
cout << "输入要修改的姓名:" << endl;
string name;
cin >> name;
if (isexist(yp, name) == -1)
{
cout << "查无此人" << endl;
}
else
{
int ret = isexist(yp, name);
cout << "姓名:" << endl;
string name1;
cin >> name1;
yp->personArray[ret].name = name1;
cout << "年龄:" << endl;
int age1;
cin >> age1;
yp->personArray[ret].age = age1;
cout << "号码:" << endl;
string number;
cin >> number;
yp->personArray[ret].phone = number;
cout << "修改完成!" << endl;
}
system("read -p 'Press Enter to continue...' var");
}
// 清空通讯录
void clearyp(yellowpage *yp)
{
yp->size = 0;
cout << "已清空!" << endl;
system("read -p 'Press Enter to continue...' var");
}
// #define a 100
int main(int argc, char const *argv[])
{
yellowpage yp;
int select = 0;
while (true)
{
showMenu();
cin >> select;
switch (select)
{
case 1:
addperson(&yp);
break;
case 2:
printinfo(&yp);
break;
case 3:
dropperson(&yp);
break;
case 4:
selectperson(&yp);
break;
case 5:
alterperson(&yp);
break;
case 6:
clearyp(&yp);
break;
case 0:
cout << "拜拜了您内" << endl;
system("read -p 'Press Enter to continue...' var");
return 0;
break;
default:
break;
}
}
return 0;
}
Article
通讯录管理系统
/*time:2020年9月22日 auther:wpp */ #include <iostream> using namespace std; #include <str。