i++; } p[i]->Next=NULL; Tag=2; break;} } }
int AddrList::ShowAll() //显示全部结点,每10个显示一屏 { Node* x=HeadPtr; if(x); else return 0; int i=1; while(1) { cout << setw(12)<<\学号\<<\姓名\setw(12) <<\办公电话\setw(12) <<\家庭电话\移动电话\电子邮件\ while(i<=10) { x->Show(); i++; if(x=x->Next); else break; } system(\ i=1; if(x); else break; } }
AddrList::~AddrList() //释放链表空间 { Node *x1=HeadPtr; Node *x2=x1; while(x2=x2->Next) { delete x1; x1=x2; } delete x2;
}
void AddrList::CreateList(char *filename) //从二进制文件中读入数据,构造链表 { char a[30]={0},b[30]={0},c[30]={0},d[30]={0},e[30]={0},f[30]={0}; ifstream in(filename,ios::binary); while(in>>a) { in>>b>>c>>d>>e>>f; AddSort(a,b,c,d,e,f); } in.close(); }
void AddrList::CreateFromTxt(char *filename) //从 文本文件中读入数据,构造链表 { char a[30],b[30],c[30],d[30],e[30],f[30]; ifstream in(filename); while(in>>a) { in>>b>>c>>d>>e>>f; AddSort(a,b,c,d,e,f); } }
void AddrList::WriteToFile(char *filename) //将链表中数据写入指定的二进制文件 { Node *p=HeadPtr; ofstream out(filename,ios::binary); out<
}
}
out.close();
void AddrList::WriteToTxtFile(char *filename) //将链表写到文本文件中 { Node *x=HeadPtr; ofstream out(filename);
out << setw(12)<<\学号\姓名\办公电话\家庭电话\移动电话\ out< void DisplayMenu() //显示菜单 { int i; char *menu[]={ \ \ \ \ \ ***********小巧通讯录管理系统************* \ \ \ 1. 新增一个联系人 \ \ 2. 删除一个联系人\ \ 3. 显示所有联系人\ \ 4. 查找联系人\ \ 5. 更改联系人记录\ \ 6. 从TXT文档中增加记录\ \ 7. 导出联系人到Txt文档\ \ 8. 排序\ \ 9. 退出\ \ \ \ ****************************************** \ \ \ ^_^ 欢迎使用 ^_^\ NULL } ; system(\ for(i=0;menu[i];i++) cout << menu[i]< cout<< \请选择(1--9) :\ void add(AddrList &addrlist) //按当前Tag标志插入结点,插入结点后,链表仍然保持升序 { system(\ char a[30],b[30],c[30],d[30],e[30],f[30]; cout<<\ 添加记录\ \ **************************************\ \ 请输入一个联系人数据\ cout << \学号\<<\姓名\setw(12) <<\办公电话\setw(12) <<\家庭电话\移动电话\电子邮件\ cin>>a>>b>>c>>d>>e>>f; addrlist.AddSort(a,b,c,d,e,f); cout<<\添加完成\ system(\} void del(AddrList &addrlist) //删除一个结点 { system(\ char p[30]; cout<<\ 删除记录\ \ **************************************\ \ 请输入一个联系人的姓名 \ cin>>p; addrlist.Delete(p); cout<<\删除完成\ system(\ } void showall(AddrList &addrlist) //显示所有结点 { system(\ cout<<\ 显示所有联系人 \ \ **************************************\ if(addrlist.ShowAll()) ; else cout<<\空记录!\ system(\} void query(AddrList &addrlist) //按姓名查找一个结点 { system(\ char name[30]; Node *p; cout<<\ 查找联系人 \ \ **************************************\ \ 请输入一个联系人的姓名 \ cin>>name; if(p=addrlist.LookUp(name)) { cout<< setw(12)<<\学号\<<\姓名\setw(12) <<\办公电话\setw(12) <<\家庭电话\\移动电话\电子邮件 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C++简单通讯录管理 程序(2)在线全文阅读。
相关推荐: