C++程序设计通讯录管理系统cppWord格式.docx

上传人:b****2 文档编号:5133226 上传时间:2023-05-04 格式:DOCX 页数:22 大小:18.33KB
下载 相关 举报
C++程序设计通讯录管理系统cppWord格式.docx_第1页
第1页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第2页
第2页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第3页
第3页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第4页
第4页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第5页
第5页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第6页
第6页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第7页
第7页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第8页
第8页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第9页
第9页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第10页
第10页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第11页
第11页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第12页
第12页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第13页
第13页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第14页
第14页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第15页
第15页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第16页
第16页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第17页
第17页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第18页
第18页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第19页
第19页 / 共22页
C++程序设计通讯录管理系统cppWord格式.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C++程序设计通讯录管理系统cppWord格式.docx

《C++程序设计通讯录管理系统cppWord格式.docx》由会员分享,可在线阅读,更多相关《C++程序设计通讯录管理系统cppWord格式.docx(22页珍藏版)》请在冰点文库上搜索。

C++程序设计通讯录管理系统cppWord格式.docx

classManage

private:

Person*person;

Manage()

{

person=0;

Load();

~Manage()

Person*p;

p=person;

while(p)

{

p=p->

next;

deleteperson;

person=p;

}

voidFind(charName[20]);

//按姓名查找

voidFind(stringID);

//按编号查找

voidAdd();

//添加加信息

voidDelete();

//删除信息

voidModify(stringID);

//修改信息

voidQuery();

//查询信息

voidTJ();

//清除文件信息

voidSave();

//保存数据

voidLoad();

//读入数据

voidLook();

//预览

voidDesTory();

voidOutput(Person*p)

cout<

<

"

\t\t学号:

"

p->

No<

endl;

\t\t姓名:

Name<

\t\t性别:

Sex<

\t\t年龄:

Age<

\t\t联系电话:

Tel<

voidManage:

:

Add()

system("

cls"

);

Person*p,*p2;

//新结点指针

stringNo,Age,Tel;

charName[20],Sex[10];

charc;

cout<

\n**新增学生通讯录**\n"

;

//输入学生信息

输入学号:

\t"

cin>

>

No;

Person*p1;

p1=person;

while(p1)

{

if(p1->

No==No)

{

break;

}

else

{

p1=p1->

}

}

if(p1!

=NULL)

{

cout<

该学号已存在,是否修改该学生信息(Y/N)"

cin>

c;

if(toupper(c)=='

Y'

cout<

该学生信息为:

Find(No);

Modify(No);

return;

else

输入姓名:

Name;

输入性别:

Sex;

输入年龄:

Age;

输入联系方式:

Tel;

p=newPerson(No,Name,Sex,Age,Tel);

p->

next=0;

//学生结点加入链表

if(person)//若已经存在结点

p2=person;

while(p2->

next)//查找尾结点

p2=p2->

p2->

next=p;

//连接

}

else//若不存在结点(表空)

person=p;

\t\t\t***添加成功***\n"

是否继续添加(Y/N)"

if(toupper(c)=='

Add();

else

return;

}

Delete()//删除人员

{

\n**删除信息**\n"

输入要删除的学生ID:

//查找要删除的结点

Person*p1,*p2;

p1=person;

while(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->

deletep1;

else//若要删除的结点是后续结点

p2->

next=p1->

\t\t***删除成功***\n"

是否继续删除(Y/N)"

if(toupper(c)=='

Delete();

else

return;

else//未找到结点

未找到该学生!

getch();

Modify(stringID)

Person*p1;

No==ID)

=NULL)//若找到结点

system("

所要修改的学生的信息如下:

do

1.修改姓名2.修改性别3.修改年龄4.修改联系方式5.退出修改\n"

请选择(1-5)要修改的信息\n"

if(c!

5'

请输入新的信息:

switch(c)

case'

1'

p1->

break;

2'

3'

4'

default:

}while(c!

system("

\t***修改成功***\n"

是否继续修改(Y/N):

请输入要修改人员的ID:

ID;

Modify(ID);

//暂停

}

Save()//数据写入到文件

ofstreamfPerson("

Person.txt"

ios:

out);

\n保存数据,是否继续?

[Y/N]:

if(toupper(c)!

return;

Person*p=person;

while(p)

fPerson<

p=p->

fPerson.close();

\n保存成功...\n"

Load()//数据读入

ifstreamfPerson;

fPerson.open("

person.txt"

in);

fPerson>

No>

Name>

Sex>

Age>

while(fPerson.good())

p=newPerson(No,Name,Sex,Age,Tel);

p->

//员工结点加入链表

if(person)//若已经存在结点

Person*p2;

p2=person;

while(p2->

p2=p2->

else//若不存在结点(表空)

fPerson>

Find(stringID)

{

未找到该学生"

Find(charName[20])

intcount=0;

if(strcmp(p1->

Name,Name)==0)

count++;

Output(p1);

if(count)

\t查询成功!

!

\n共找到"

count<

个名字为★"

★的同学\n"

\n\t\t未找到该学生!

Query()

stringID,Tel;

do{

1.按学号查找2.按名字查找3.按电话号码查找4.退出查找"

switch(c)

case'

输入学号ID:

Find(ID);

};

输入姓名Name:

Find(Name);

输入电话号码Tel"

Find(Tel);

};

break;

default:

输入有误请重新输入!

}while(c!

&

c!

\t\t\t***查找成功***\n"

是否继续查找(Y/N)"

Query();

Look()

//设置字体颜色

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|

FOREGROUND_RED|FOREGROUND_GREEN);

ID:

\t姓名:

count++;

if(count!

=0)

\n\t\t预览成功!

\n"

查询详细信息(Y/N):

return;

尚未创建通讯录,是否创建(Y/N)"

DesTory()

{//设置字体为红色

FOREGROUND_RED);

\n\t\t\t**清除信息**\n"

警告:

\n清除通讯录信息会导致您保存的信息完全消失!

★是否决定清除通讯录信息(Y/N):

if(toupper(c)!

请再次确认(Y/N)"

//ofstreamfPerson("

//fPerson.close();

TJ()

intcount=0,Boy=0,Girl=0;

Sex,"

男"

)==0)

Boy++;

女"

Girl++;

p1=p1->

\n总共有"

份通讯录\n"

男生:

Boy<

\t女生:

Girl<

intmain(void)

Managem;

intc;

do

//设置字体为绿色

FOREGROUND_GREEN);

=========================================="

★☆\t1.新增通讯录\t☆★"

★☆\t2.删除通讯录\t☆★"

★☆\t3.修改通讯录\t☆★"

★☆\t4.查询详细信息\t☆★"

★☆\t5.保存数据\t☆★"

★☆\t6.预览信息\t☆★"

★☆\t7.清除通讯录\t☆★"

★☆\t8.统计\t☆★"

0-退出\t请选择(1-8):

switch(c)

case1:

m.Add();

case2:

m.Delete();

case3:

m.Modify(ID);

case4:

m.Query();

case5:

m.Save();

case6:

m.Look();

case7:

m.DesTory();

case8:

m.TJ();

=0);

chars;

\n★是否要保存您的所有操作(Y/N):

s;

if(toupper(s)=='

m.Save();

return0;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2