#include
using namespace std;
#define MAX 1000
struct linkman {
string name;
int sex; //1-男 2-女
int age;
string tell;
string address;
};
struct address_list {
int size;
struct linkman arr[MAX];
};
void addLinkman(address_list* abs)
{
cout << “请输入姓名 :”;
string name;
cin >> name;
abs->arr[abs->size].name = name;
cout << endl;
cout << "请输入性别(1=男,2=女) :";
int sex;
cin >> sex;
abs->arr[abs->size].sex = sex;
cout << endl;
cout << "请输入年龄 :";
int age;
cin >> age;
abs->arr[abs->size].age = age;
cout << endl;
cout << "请输入电话 :";
string tell;
cin >> tell;
abs->arr[abs->size].tell = tell;
cout << endl;
cout << "请输入住址 :";
string address;
cin >> address;
abs->arr[abs->size].address = address;
abs->size++;
system("pause");
system("cls");
}
void showLinkman(address_list * abs)//显示联系人
{
if (abs->size == 0)
{
cout << “查询为空 !!!” << endl;
}
else
{
for (int i = 0; i < abs->size; i++)
{
cout << "姓名是 :" << abs->arr[i].name << "\t性别是 :" << (abs->arr[i].sex == 1 ? "男" : "女") << "\t年龄是 :" << abs->arr[i].age
<< "\t电话是 :" << abs->arr[i].tell << "\t住址是 :" << abs->arr[i].address << endl;
}
}
system("pause");
system("cls");
//string name;
//int sex; //1-男 2-女
//int age;
//string tell;
//string address;
}
int isExist(address_list*abs, string name)
{
for (int i = 0; i < abs->size; i++)
{
if (abs->arr[i].name == name)
{
return i;
system(“pause”);
system(“cls”);
return i;
}
}
/cout << “查无此人” << endl;/
/system(“pause”);
system(“cls”);/
return -1;
}
void delectLinkman(address_list* abs)
{
cout << “请输入想删除的联系人 :”;
string name;
cin >> name;
int temp = isExist(abs, name);
if (temp != -1)
{
for (int i = temp; i < abs->size; i++)
{
abs->arr[i] = abs->arr[i + 1];
}
cout << “删除成功!!!” << endl;
abs->size–;
}
else
{
cout << “查无此人!!!” << endl;
}
system(“pause”);
system(“cls”);
}
void findLinkman(address_list *abs)
{
cout << “请输入想查找的联系人 :”;
string name;
cin >> name;
int temp = isExist(abs, name);
if (temp != -1)
{
cout << “姓名是 :” << abs->arr[temp].name
<< “\t性别是 :” << abs->arr[temp].sex
<< “\t年龄是 :” << abs->arr[temp].age
<< “\t电话是 :” << abs->arr[temp].tell
<< “\t住址是 :” << abs->arr[temp].address << endl;
cout << “查找成功!!!” << endl;
}
else
{
cout << “查无此人!!!” << endl;
}
system(“pause”);
system(“cls”);
}
void modifyLinkman(address_list* abs)
{
cout << “请输入需要修改的联系人”;
string name;
cin >> name;
int temp=isExist(abs, name);
if (temp != -1)
{
cout << “请输入姓名 :”;
string name;
cin >> name;
abs->arr[temp].name = name;
cout << endl;
cout << "请输入性别(1=男,2=女) :";
int sex;
cin >> sex;
abs->arr[temp].sex = sex;
cout << endl;
cout << "请输入年龄 :";
int age;
cin >> age;
abs->arr[temp].age = age;
cout << endl;
cout << "请输入电话 :";
string tell;
cin >> tell;
abs->arr[temp].tell = tell;
cout << endl;
cout << "请输入住址 :";
string address;
cin >> address;
abs->arr[temp].address = address;
cout << endl;
cout << "修改成功!!!" << endl;
}
else
{
cout << "查无此人!!!" << endl;
}
system("pause");
system("cls");
}
void emptyLinkman(address_list* abs)
{
abs->size = 0;
cout << “已清空!!!” << endl;
system(“pause”);
system(“cls”);
}
int main()
{
address_list abs;
abs.size = 0;
while (true)
{
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;
int flg;
cin >> flg;
switch (flg)
{
case 1:
/cout << “添加联系人” << endl;/
addLinkman(&abs);
break;
case 2:
/cout << “显示联系人” << endl;/
showLinkman(&abs);
break;
case 3:
//{
// /cout << “删除联系人” << endl;/
// string name;
// cin >> name;
// isExist(&abs, name);
// break;
//}
delectLinkman(&abs);
break;
case 4:
/*cout << "查找联系人" << endl;*/
findLinkman(&abs);
break;
case 5:
/*cout << "修改联系人" << endl;*/
modifyLinkman(&abs);
break;
case 6:
/*cout << "清空联系人" << endl;*/
emptyLinkman(&abs);
break;
case 0:
cout << "欢迎再次使用通讯录!!!" << endl;
system("pause");
return 0;
}
}
system("pause");
return 0;
}