1、private: Person *person; Manage() person=0; Load(); Manage() Person *p; p=person; while(p) p=p-next; delete person; person=p; void Find(char Name20);/按姓名查找 void Find(string ID);/按编号查找 void Add(); /添加加信息 void Delete(); /删除信息 void Modify(string ID); /修改信息 void Query(); /查询信息 void TJ(); /清除文件信息 void Sa
2、ve(); /保存数据 void Load(); /读入数据 void Look();/预览 void DesTory(); void Output(Person *p) coutNoendl;tt姓名:Namett性别:Sextt年龄:Agett联系电话:Telvoid Manage:Add() system(cls); Person *p,*p2; /新结点指针 string No,Age,Tel; char Name20,Sex10; char c; coutNo; Person *p1; p1=person; while(p1) if(p1-No=No) break; else p1=
3、p1- if(p1!=NULL) coutc; if(toupper(c)=Y) coutnext=0; /学生结点加入链表 if(person) /若已经存在结点 p2=person; while(p2-next) /查找尾结点 p2=p2- p2-next=p; /连接 else /若不存在结点(表空) person=p;ttt *添加成功*n是否继续添加(Y/N) if(toupper(c)= Add(); else return ;Delete() /删除人员 n* 删除信息 *n输入要删除的学生ID: /查找要删除的结点 Person *p1,*p2; p1=person; whil
4、e(p1) if(p1- break; else p2=p1; p1=p1- /删除结点 if(p1!=NULL)/若找到结点,则删除 所要删除的学生的信息如下:n Output(p1);确定是否删除(Y/N): cin if(toupper(c)!= return; / system(pause if(p1=person) /若要删除的结点是第一个结点 person=p1- delete p1; else /若要删除的结点是后续结点 p2-next=p1-tt*删除成功*n是否继续删除(Y/N) if(toupper(c)= Delete(); else return ; else /未找到
5、结点 未找到该学生! getch();Modify(string ID) Person *p1;No=ID) =NULL)/若找到结点 system(所要修改的学生的信息如下: do1. 修改姓名 2. 修改性别 3. 修改年龄 4. 修改联系方式 5. 退出修改 n请选择(1-5)要修改的信息n if(c!5请输入新的信息: switch(c) case 1p1- break;234 default: while(c! system(t *修改成功*n是否继续修改(Y/N):请输入要修改人员的ID:ID; Modify(ID);/暂停 Save() /数据写入到文件 ofstream fPe
6、rson(Person.txt,ios:out);n保存数据,是否继续?Y/N: if(toupper(c)! return; Person *p=person; while(p) fPerson fPerson.close();n保存成功.nLoad() /数据读入 ifstream fPerson; fPerson.open(person.txtin); fPersonNoNameSexAge while(fPerson.good() p=new Person(No,Name,Sex,Age,Tel); p- /员工结点加入链表 if(person) /若已经存在结点 Person *p2
7、; p2=person; while(p2- p2=p2- else /若不存在结点(表空) fPersonFind(string ID) 未找到该学生Find(char Name20) int count=0; if(strcmp(p1-Name,Name)=0) count+; Output(p1); if(count)t查询成功!n共找到 countn总共有 份通讯录n男生:Boyt 女生:Girlint main(void) Manage m; int c; do /设置字体为绿色 FOREGROUND_GREEN); = t 1.新增通讯录 t t 2.删除通讯录 t t 3.修改通
8、讯录 t t 4.查询详细信息 t t 5.保存数据 t t 6.预览信息 t t 7.清除通讯录 t t 8.统计 t 0退出t请选择(1-8): switch(c) case 1: m.Add(); case 2: m.Delete(); case 3: m.Modify(ID); case 4: m.Query(); case 5: m.Save(); case 6: m.Look(); case 7: m.DesTory(); case 8: m.TJ();=0); char s;n是否要保存您的所有操作(Y/N):s; if(toupper(s)= m.Save(); return 0;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1