c语言通讯录源代码.docx

上传人:b****6 文档编号:6388823 上传时间:2023-01-06 格式:DOCX 页数:33 大小:21.90KB
下载 相关 举报
c语言通讯录源代码.docx_第1页
第1页 / 共33页
c语言通讯录源代码.docx_第2页
第2页 / 共33页
c语言通讯录源代码.docx_第3页
第3页 / 共33页
c语言通讯录源代码.docx_第4页
第4页 / 共33页
c语言通讯录源代码.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

c语言通讯录源代码.docx

《c语言通讯录源代码.docx》由会员分享,可在线阅读,更多相关《c语言通讯录源代码.docx(33页珍藏版)》请在冰豆网上搜索。

c语言通讯录源代码.docx

c语言通讯录源代码

#include

#include

#include

#include

structperson

{

charname[15];

charsex[2];

intnianling;

longintyoubian;

charaddr[50];

charcelephone[22];

charhomephone[22];

charcompany[20];

charemail[40];

longintQQ;

}per[500];

intnum=0;//*外部变量num为文件中的纪录数*//

FILE*fp;

voidmainmenu();//*主菜单*//

voidnewrecord();//新添纪录*//

voidxiugaimenu();//*修改菜单*//

voidxiugaibyname();//*按姓名修改*//

voidxiugaibycelephone();//*按手机号码修改*//

voidxiugaixiangmu(inta);//*修改项目*//

voidsearchmenu();//*查询菜单*//

voidsearchbyname();//*按姓名查询*//

voidsearchbycelephone();//*按手机号码查询*//

voidsearchbyhomephone();//*按家庭电话号码查询*//

voidsearchbyqq();//*按QQ查询*//

voiddeletemenu();//*删除菜单*//

voiddeleteall();//*删除所有信息*//

voiddeleteone();//*删除单个*//

voidshowall();//*输出全部信息*//

voidreadfromfile();//*读取文件*//

voidwritetofile();//*写入文件*///

voiddeletebycelephone();//*按手机号码删除*//

voiddeletebyname();//*按姓名删除*/

voidlistbycelephone();//*按手机号码排序*//

voidlistbyname();//*按姓名排序*//

voidlistmenu();//*排序菜单*//

voidmain()//*主函数*//

{

system("cls");

readfromfile();

while

(1)

{

mainmenu();

}

}//*主函数结束*//

voidmainmenu()//*主菜单函数*//

{

inta;

system("cls");

system("color2a");

printf("\n\t您好!

欢迎使用通讯录!

\n");

printf("1:

添加个人信息\n");

printf("2:

查询个人信息\n");

printf("3:

删除个人信息\n");

printf("4:

修改个人信息\n");

printf("5:

信息排序\n");

printf("6:

输出全部信息\n");

printf("7:

写入文件\n");

printf("8:

读取文件\n");

printf("9:

删除所有\n");

printf("0:

退出\n");

printf("请输入您的数字选择:

");

loop1:

scanf("%d",&a);

switch(a)

{

case1:

newrecord();break;

case2:

searchmenu();break;

case3:

deletemenu();break;

case4:

xiugaimenu();break;

case5:

listmenu();break;

case6:

showall();break;

case7:

writetofile();break;

case8:

readfromfile();break;

case9:

deleteall();break;

case0:

exit(0);

default:

printf("对不起!

您的输入有误!

请重新输入:

");gotoloop1;

}

}

voidnewrecord()//*添加纪录*//

{

inta;

system("cls");

system("color2a");

loop:

printf("\n\n\n\n\t\t请输入您要添加的联系人的信息:

\n");

printf("\n请输入姓名:

\n");

name:

scanf("%s",&per[num].name);

if(strlen(per[num].name)>15)

{

printf("对不起!

您的输入有误!

请重新输入");

gotoname;

}

printf("\n请输入性别:

\n");

sex:

scanf("%s",&per[num].sex);

if(strlen(per[num].sex)==0)

{

printf("对不起!

您的输入有误!

请重新输入");

gotosex;

}

printf("\n请输入年龄:

");

nianling:

scanf("%d",&per[num].nianling);

if(per[num].nianling<10||per[num].nianling>110)

{

printf("对不起!

您的输入有误!

请重新输入");

gotonianling;

}

printf("\n请输入邮编\n");

youbian:

scanf("%d",&per[num].youbian);

if(per[num].youbian<10000||per[num].youbian>999999)

{

printf("对不起!

您的输入有误!

请重新输入");

gotoyoubian;

}

printf("\n请输入地址\n");

addr:

scanf("%s",&per[num].addr);

if(strlen(per[num].addr)>50||strlen(per[num].addr)<4)

{

printf("对不起!

您的输入有误!

请重新输入\n");

gotoaddr;

}

printf("\n请输入手机号码:

\n");

celephone:

scanf("%s",&per[num].celephone);

if(strlen(per[num].celephone)!

=11)

{

printf("对不起!

您的输入有误!

请重新输入\n");

gotocelephone;

}

printf("\n请输入家庭电话号码:

\n");

homephone:

scanf("%s",&per[num].homephone);

if(strlen(per[num].homephone)!

=11)

{

printf("对不起!

您的输入有误!

请重新输入\n");

gotohomephone;

}

printf("\n请输入公司名称:

");

company:

scanf("%s",&per[num].company);

if(strlen(per[num].company)>20||strlen(per[num].company)<10)

{

printf("对不起!

您的输入有误!

请重新输入");

gotocompany;

}

printf("\n输入电子邮箱:

");

email:

scanf("%s",&per[num].email);

if(strlen(per[num].email)>30||strlen(per[num].email)<4)

{

printf("对不起!

您的输入有误!

请重新输入");

gotoemail;

}

printf("\n输入QQ号码:

");

QQ:

scanf("%ld",&per[num].QQ);

if(per[num].QQ>00||per[num].QQ<)

{

printf("对不起!

您的输入有误!

请重新输入");

gotoQQ;

}

num++;

printf("\n是否继续添加?

\n");

printf("\n请按1和2(1代表继续;2代表不继续)\n");

printf("请输入您的选择");

scanf("%d",&a);

if(a==1)

{

gotoloop;

}

else

{

return;

}

}

voidsearchmenu()//*查询菜单*//

{

inta;

system("cls");

system("color2a");

printf("\n\t\t欢迎使用查询菜单");

printf("\n\t\t1-按手机号码查询");

printf("\n\t\t2-按姓名查询");

printf("\n\t\t3-按家庭电话号码查询");

printf("\n\t\t4-按QQ查询");

printf("\n\t\t5-返回主菜单");

printf("\n\t\t");

printf("请输入您的选择");

scanf("%d",&a);

switch(a)

{

case1:

searchbycelephone();break;

case2:

searchbyname();break;

case3:

searchbyhomephone();break;

case4:

searchbyqq();break;

case5:

mainmenu();break;

}

}

voidsearchbycelephone()//*按手机号码查询*//

{

intmark=0;

inti,j;

inta=0;

charcelephone[11];

printf("\n按手机号码查找\n");

printf("\n请输入手机号码:

\n");

scanf("%s",celephone);

for(i=0;i

{

if(strcmp(per[i].celephone,celephone)==0)

{

printf("\n以下是您查找的联系人的信息");

printf("\n________________________________");

printf("\n名字:

%s",per[i].name);

printf("\n性别:

%s",per[i].sex);

printf("\n年龄:

%d",per[i].nianling);

printf("\n邮编:

%ld",per[i].youbian);

printf("\n地址:

%s",per[i].addr);

printf("\n手机号码:

%s",per[i].celephone);

printf("\n家庭电话号码:

%s",per[i].homephone);

printf("\n公司名称:

%s",per[i].company);

printf("\n电子邮件:

%s",per[i].email);

printf("\nQQ号码:

%ld",per[i].QQ);

printf("\n________________________________");

printf("\n请按任意数字键返回主菜单");

mark++;

scanf("%d",&j);

return;

}

}

if(mark==0)

{

printf("\n对不起!

没有该联系人的信息!

");

printf("\n请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

}

voidsearchbyname()//*按姓名查询*//

{

intmark=0;

inti,j,findmark=0;

inta=0;

charname[15];

printf("\n按姓名查找");

printf("\n请输入姓名:

");

scanf("%s",name);

for(i=a;i

{

if(strcmp(per[i].name,name)==0)

{

findmark++;

printf("\n\t\t以下是您查找的联系人的信息");

printf("\n\t\t________________________________");

printf("\n\t\t名字:

%s",per[i].name);

printf("\n\t\t性别:

%s",per[i].sex);

printf("\n\t\t年龄:

%d",per[i].nianling);

printf("\n\t\t邮编:

%ld",per[i].youbian);

printf("\n\t\t地址:

%s",per[i].addr);

printf("\n\t\t手机号码:

%s",per[i].celephone);

printf("\n\t\t家庭电话号码:

%s",per[i].homephone);

printf("\n\t\t公司名称:

%s",per[i].company);

printf("\n\t\t电子邮件:

%s",per[i].email);

printf("\n\t\tQQ号码:

%ld",per[i].QQ);

printf("\n\t\t________________________________");

if((i+1)

{

printf("\n是否继续查找相同名字的联系人的信息?

(1代表继续;2代表不继续)");

scanf("%d",&j);

if(j==1)

{

a=i;

mark++;

continue;

}

else

break;

}

else

{

printf("\n请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

}

}

if(mark!

=0)

{

printf("\n对不起!

没有相同名字的该联系人的信息!

");

printf("\n请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

elseif(findmark==0)

{

printf("\n对不起!

没有该联系人的信息!

");

printf("\n请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

}

voidsearchbyhomephone()//*按家庭电话号码查询*//

{

intmark=0;

inti,j;

inta=0;

charhomephone[11];

printf("\n\t\t按家庭电话号码查找");

printf("\n请输入家庭电话号码:

");

scanf("%s",homephone);

for(i=0;i

{

if(strcmp(per[i].homephone,homephone)==0)

{

printf("\n\t\t以下是您要查找的联系人的信息");

printf("\n\t\t________________________________");

printf("\n\t\t名字:

%s",per[i].name);

printf("\n\t\t性别:

%s",per[i].sex);

printf("\n\t\t年龄:

%d",per[i].nianling);

printf("\n\t\t邮编:

%ld",per[i].youbian);

printf("\n\t\t地址:

%s",per[i].addr);

printf("\n\t\t手机号码:

%s",per[i].celephone);

printf("\n\t\t家庭电话号码:

%s",per[i].homephone);

printf("\n\t\t公司名称:

%s",per[i].company);

printf("\n\t\t电子邮件:

%s",per[i].email);

printf("\n\t\tQQ号码:

%ld",per[i].QQ);

printf("\n\t\t________________________________");

printf("\n\t\t请按任意数字键返回主菜单");

mark++;

scanf("%d",&j);

return;

}

}

if(mark==0)

{

printf("\n\t\t对不起!

没有该联系人的信息!

");

printf("\n\t\t请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

}

voidsearchbyqq()//*按QQ查询*//

{

intmark=0;

inti,j;

longintQQ;

printf("\n\t\t按QQ号码查找\n");

printf("\n请输入QQ号码:

");

scanf("%ld",&QQ);

for(i=0;i

{

if(per[i].QQ==QQ)

{

printf("\n\t\t以下是您查找的联系人的信息");

printf("\n\t\t________________________________");

printf("\n\t\t名字:

%s",per[i].name);

printf("\n\t\t性别:

%s",per[i].sex);

printf("\n\t\t年龄:

%d",per[i].nianling);

printf("\n\t\t邮编:

%ld",per[i].youbian);

printf("\n\t\t地址:

%s",per[i].addr);

printf("\n\t\t手机号码:

%s",per[i].celephone);

printf("\n\t\t家庭电话号码:

%s",per[i].homephone);

printf("\n\t\t公司名称:

%s",per[i].company);

printf("\n\t\t电子邮件:

%s",per[i].email);

printf("\n\t\tQQ号码:

%ld",per[i].QQ);

printf("\n\t\t________________________________");

printf("\n\t\t请按任意数字键返回主菜单");

mark++;

scanf("%d",&j);

return;

}

}

if(mark==0)

{

printf("\n\t\t对不起!

没有该联系人的信息!

");

printf("\n\t\t请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

}

voiddeletemenu()//*删除菜单*//

{

inti,j;

system("cls");

system("color3b");

if(num==0)

{

printf("\n\t\t对不起!

文件中无任何纪录!

");

printf("\n\t\t请先添加个人信息!

");

printf("\n\t\t请按任意数字键返回主菜单");

scanf("%d",&j);

return;

}

else

{

printf("\n\t\t删除菜单");

printf("\n\t\t1-删除单个");

printf("\n\t\t2-返回主菜单");

printf("\n\t\t");

printf("\n\t\t请输入您的数字选择:

");

loop4:

scanf("%d",&i);

switch(i)

{

case1:

deleteone();break;

case2:

mainmenu();break;

default:

printf("对不起!

您的输入有误!

请重新输入:

");gotoloop4;

}

}

}

voiddeleteone()//*删除单个*//

{

inti;

printf("\n\t\t1-按手机号码删除2-按姓名删除");

printf("\n\t\t请输入您的选择:

");

loop5:

scanf("%d",&i);;

switch(i)

{

case1:

deletebycelephone();break;

case2:

deletebyname();break;

default:

printf("对不起!

您的输入有误!

请重新输入:

");gotoloop5;

}

}

voiddeletebyname()//姓名删除*//

{

inta=0;

intfindmark=0;

inti,j,k;

intdeletemark=0;

charname[15];

printf("\n\t

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

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1