- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C课程设计_电话簿管理
C++课程设计_电话簿管理
#includeiostream.h
#includefstream.h
#includestdlib.h
#includestring.h
#includeiomanip.h
class AddrList; //说明AddrList类
void DisplayMenu(); //输出主菜单
void DisplayMenu1(); //输出子菜单1
void add(AddrList addrlist); //向AddrList类的对象添加一个新Node类的对象
void del(AddrList addrlist); //删除AddrList类链表中的一个Node类的对象
void showall(AddrList addrlist); //显示AddrList类链表中的所有节点
void query(AddrList addrlist); //按姓名查找并显示一条记录
void modify(AddrList addrlist); /*按姓名修改一条记录。
1.当修改姓名后,如果当前按姓名排序,需重新排序;
2.当修改办公室电话后,如果当前按办公室电话排序,需重 新排序*/
void sort(AddrList addrlist); /*排序链表。
1. 系统默认按姓名排序。
2. 当执行主菜单的Sort命令时,系统显示当前排序关键字。
3. 用户可以选择是否修改排序关键字。
4. 重新排序的方法是:依次从原链表中摘除节点,按要求的顺序重新添加到新链表中。最后将首尾节点指向新链表。
5. 当选择了新链表后,以后一直按这种方法排序。即使退出系统,重新启动系统时,也是按这种这种顺序排序。*/
void addfromtxtfile(AddrList addrlist);
void writetotxtfile(AddrList addrlist);
void quit(AddrList addrlist);
class Node //Node类
{
char Name[10]; //联系人姓名
int OfficePhone; //办公室电话
int HomePhone; //住宅号码
char MobilePhone[15]; //手机号码
char EMail[20]; //Email地址
Node *Next; //下一个节点的指针
public:
Node(char *name, int officephone,int homephone,char *mobilephone,char *email)
//缺省构造函数
{
strcpy(Name,name);
OfficePhone=officephone;
HomePhone=homephone;
strcpy(MobilePhone,mobilephone);
strcpy(EMail,email);
Next=NULL;
}
void Show() //输出节点的数据
{
coutsetw(10)Namesetw(11)OfficePhone(O);
coutsetw(11)HomePhone(H);
coutsetw(15)MobilePhone(M)setw(20)EMail(E)endl;
}
void SetName(char *name) //修改姓名
{ strcpy(Name,name); }
void SetOfficePhone(int n) //修改办公室电话
{ OfficePhone=n; }
void SetHomePhone(int n) //修改住宅电话
{ HomePhone=n; }
void SetMobilePhone(char* s) //修改手机号码
{ strcpy(MobilePhone,s); }
void SetEMail(char *email) //修改Email地址
{ strcpy(EMail,email); }
Node *GetNext() //取得Node中Next的值
{ return Next; }
friend AddrList; //将AddrList说明为友元类
friend void sort(AddrList addrlist); //将sort函数说明为友元函数
friend void writetotxtfile(AddrList ); //将writetotxtf
文档评论(0)