#include <iostream>
using namespace std;
#define max1 100//define 的定义方式!!!
struct Person {
string name;
int age;
};
struct addressbook {
Person person [max1];
int maxpeople;
};
void showbook1(addressbook* p) {
for (int i = 0; i < p->maxpeople;i++) {
cout << p->person[i].name << endl;
cout << p->person[i].age << endl;
}
}
void addbook1(addressbook *p) {
if (p->maxpeople >= max1) {
return;
}
else
{
string name;
cin >> name;
p->person[p->maxpeople].name= name;
int age1;
cin >> age1;
p->person[p->maxpeople].age = age1;
p->maxpeople++;
}
}
int isin(addressbook* p,string name){
for (int i = 0; i < max1; i++)
{
if (p->person[i].name == name) {
return i;
break;
}
}
return -1;
}
void deletebook(addressbook *p) {
cout << "输入名字" << endl;
string name;
cin >> name;
int num = isin(p, name);
if ( num== -1) {
cout << "没有" << endl;
}
else
{
for (int i = num; i+1 < max1; i++)
{
p->person[i] = p->person[i + 1];
}
p->maxpeople--;
}
}
void show () {
cout << "-------------" << endl;
cout << "1,添加联系人" << endl;
cout << "2,查看联系人" << endl;
cout << "3,删除联系人" << endl;
cout << "0,退出通讯录" << endl;
cout << "-------------" << endl;
}
int main() {
addressbook book;
book.maxpeople = 0;//初始化值.
int select = 0;
while (true) {
show();
cin >> select;
switch (select)
{
case 1:
addbook1(&book);
break;
case 2:
showbook1(&book);
break;
case 3:
deletebook(&book);
break;
case 0:
cout << "欢迎下一次使用" << endl;
system("pause");// system(“pause”) 是调用DOS系统的暂停命令 pause 来暂停程序执行,按任意一个键后将继续执行。
return 0;
default:
break;
}
}
return 0;
}
09-02
1296
08-31
1910