3通讯簿管理(顺序表的应用)【问题描述】通讯簿是一个线性表,可以存储一定数量的联系人记录,提供查找、插入、删除和修改等操作
通讯簿的特点是以查找为主要操作,要求快速查找到指定对象的位置,故宜采用具有随机访问功能的顺序表
【数据结构】使用顺序表SeqList建立通讯簿
作为表项的联系人记录,至少应包括以下属性:{序号,姓名,与本人关系,电话号码}其中序号具有唯一性
序号和姓名可作为查找的主要关键字
与本人关系可枚举为“亲人”、“朋友”和“同事”,主要作用是为联系人分组,并作为次要关键字
将上述联系人记录定义为一个结构(struct),在主程序中建立模板类顺序表SeqList的对象时用该结构实例化表结点的类型
【主要功能】程序应为用户提供操作选择界面,必要的操作包括:查找某人电话号码,添加新记录,修改记录,删除记录,打印亲人清单、朋友清单或同事清单以及退出等
另外,为初始化方便,原始数据可存储在磁盘文件中
【主要代码】#include#include#includestaticn=1;enumRelation{Friends,Familiers,Colleague};templatestructPerson{charNum[10];um;coutdata[l]
Name;coutdata[l]
PhoNum;coutdata[l]
m;l++;n++;returntrue;}templatevoidSeqList::Insert(){this->Input();cout