收藏 分销(赏)

c语言通讯录源代码(打印).doc

上传人:人****来 文档编号:4316053 上传时间:2024-09-05 格式:DOC 页数:16 大小:113.50KB
下载 相关 举报
c语言通讯录源代码(打印).doc_第1页
第1页 / 共16页
c语言通讯录源代码(打印).doc_第2页
第2页 / 共16页
c语言通讯录源代码(打印).doc_第3页
第3页 / 共16页
c语言通讯录源代码(打印).doc_第4页
第4页 / 共16页
c语言通讯录源代码(打印).doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、#include #include #include #include struct person char name15; char sex2;int nianling;long int youbian; char addr50; char celephone22; char homephone22; char company20; char email40; long int QQ; per500; int num=0;/*外部变量num为文件中的纪录数*/ FILE *fp; void mainmenu();/*主菜单*/ void newrecord();/新添纪录*/ void xi

2、ugaimenu();/*修改菜单*/ void xiugaibyname();/*按姓名修改*/ void xiugaibycelephone();/*按手机号码修改*/ void xiugaixiangmu(int a);/*修改项目*/ void searchmenu();/*查询菜单*/ void searchbyname();/*按姓名查询*/ void searchbycelephone();/*按手机号码查询*/ void searchbyhomephone();/*按家庭电话号码查询*/ void searchbyqq();/*按QQ查询*/ void deletemenu()

3、;/*删除菜单*/ void deleteall();/*删除所有信 息*/ void deleteone();/*删除单个*/ void showall();/*输 出 全 部 信 息*/ void readfromfile();/*读取文件*/ void writetofile();/*写入文件*/ / void deletebycelephone(); /*按手机号码删除*/ void deletebyname();/*按姓名删除*/ void listbycelephone();/*按手机号码排序*/ void listbyname();/*按姓名排序*/ void listmenu(

4、);/*排序菜单*/ void main()/*主函数*/ system(cls);readfromfile(); while (1) mainmenu(); /*主函数结束*/void mainmenu()/*主菜单函数*/ int a; system(cls); system(color FC);printf(nt 您 好! 欢 迎 使 用 通 讯 录!n);printf( 1: 添 加 个 人 信 息n);printf( 2: 查 询 个 人 信 息n);printf( 3: 删 除 个 人 信 息n);printf( 4: 修 改 个 人 信 息n);printf( 5: 信 息 排

5、序n);printf( 6: 输 出 全 部 信 息n);printf( 7: 写 入 文 件n);printf( 8: 读 取 文 件n);printf( 9: 删除所有n);printf( 0: 退 出 n);printf( 请输入您的数字选择: );loop1: scanf(%d,&a); switch (a) case 1:newrecord();break; case 2:searchmenu();break; case 3:deletemenu();break; case 4:xiugaimenu();break;case 5:listmenu();break;case 6:sho

6、wall();break;case 7:writetofile();break; case 8:readfromfile();break;case 9:deleteall();break;case 0:exit(0); default:printf(对不起!您的输入有误!请重新输入: );goto loop1; void newrecord()/*添加纪录*/ int a; system(cls); system(color 2a); loop: printf(nnnntt 请输入您要添加的联系人的信息: n); printf(n请输入姓名:n);name: scanf(%s,&pernum.

7、name); if(strlen(pernum.name)15) printf(对不起!您的输入有误!请重新输入); goto name; printf(n请输入性别:n);sex: scanf(%s,&pernum.sex); if(strlen(pernum.sex)=0) printf(对不起!您的输入有误!请重新输入); goto sex; printf(n请输入年龄:);nianling: scanf(%d,&pernum.nianling); if(pernum.nianling110) printf(对不起!您的输入有误!请重新输入); goto nianling; printf

8、(n请输入邮编n);youbian: scanf(%d,&pernum.youbian); if(pernum.youbian999999) printf(对不起!您的输入有误!请重新输入); goto youbian; printf(n请输入地址n);addr:scanf(%s,&pernum.addr); if(strlen(pernum.addr)50|strlen(pernum.addr)20|strlen(pany)30|strlen(pernum.email)1600000000|pernum.QQ10000000) printf(对不起!您的输入有误!请重新输入); goto Q

9、Q; num+; printf(n是否继续添加?n); printf(n请按1和2(1代表继续;2代表不继续)n); printf(请输入您的选择 ); scanf(%d,&a); if(a=1) goto loop; else return; void searchmenu()/*查询菜单*/ int a; system(cls);system(color 2a); printf(ntt 欢 迎 使 用 查 询 菜 单); printf(ntt1-按手机号码查询);printf(ntt2-按姓名查询);printf(ntt3-按家庭电话号码查询); printf(ntt4-按QQ查询); p

10、rintf(ntt5-返回主菜单); printf(ntt); printf(请输入您的选择 );scanf(%d,&a); switch (a) case 1:searchbycelephone();break; case 2:searchbyname();break; case 3:searchbyhomephone();break;case 4:searchbyqq();break;case 5:mainmenu();break; void searchbycelephone()/*按手机号码查询*/ int mark=0; int i,j; int a=0; char celephon

11、e11; printf(n 按手机号码查找 n); printf(n请输入手机号码:n); scanf(%s,celephone); for(i=0;inum;i+) if (strcmp(peri.celephone,celephone)=0) printf(n 以下是您查找的联系人的信息 ); printf(n_); printf(n名字: %s,peri.name); printf(n性别: %s,peri.sex); printf(n年龄: %d,peri.nianling); printf(n邮编 : %ld,peri.youbian);printf(n地址: %s,peri.add

12、r);printf(n手机号码: %s,peri.celephone);printf(n家庭电话号码:%s,peri.homephone); printf(n公司名称:%s,pany);printf(n电子邮件:%s,peri.email);printf(nQQ号码:%ld,peri.QQ);printf(n_); printf(n请按任意数字键返回主菜单); mark+; scanf(%d,&j); return; if (mark=0) printf(n对不起!没有该联系人的信息!); printf(n请按任意数字键返回主菜单); scanf(%d,&j); return; void se

13、archbyname()/*按姓名查询*/ int mark=0; int i,j,findmark=0; int a=0;char name15; printf(n 按姓名查找 ); printf(n请输入姓名:); scanf(%s,name); for(i=a;inum;i+) if (strcmp(peri.name,name)=0) findmark+;printf(ntt 以下是您查找的联系人的信息 ); printf(ntt_); printf(ntt名字: %s,peri.name); printf(ntt性别: %s,peri.sex); printf(ntt年龄: %d,p

14、eri.nianling); printf(ntt邮编 : %ld,peri.youbian);printf(ntt地址: %s,peri.addr);printf(ntt手机号码: %s,peri.celephone);printf(ntt家庭电话号码:%s,peri.homephone); printf(ntt公司名称:%s,pany);printf(ntt电子邮件:%s,peri.email);printf(nttQQ号码:%ld,peri.QQ);printf(ntt_); if (i+1)num) printf(n是否继续查找相同名字的联系人的信息?(1代表继续;2代表不继续));

15、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; else if(findmark=0) printf(n对不起!没有该联系人的信息!); printf(n请按任意数字键返回主菜单); scanf(%d,&j); return; void searchbyhom

16、ephone()/*按家庭电话号码查询*/ int mark=0; int i,j; int a=0;char homephone11; printf(ntt 按家庭电话号码查找 ); printf(n请输入家庭电话号码:); scanf(%s,homephone); for(i=0;inum;i+) if (strcmp(peri.homephone,homephone)=0) printf(ntt 以下是您要查找的联系人的信息); printf(ntt_); printf(ntt名字: %s,peri.name); printf(ntt性别: %s,peri.sex); printf(nt

17、t年龄: %d,peri.nianling); printf(ntt邮编 : %ld,peri.youbian);printf(ntt地址: %s,peri.addr);printf(ntt手机号码: %s,peri.celephone);printf(ntt家庭电话号码:%s,peri.homephone); printf(ntt公司名称:%s,pany);printf(ntt电子邮件:%s,peri.email);printf(nttQQ号码:%ld,peri.QQ);printf(ntt_); printf(ntt请按任意数字键返回主菜单);mark+; scanf(%d,&j); re

18、turn; if (mark=0) printf(ntt对不起!没有该联系人的信息!); printf(ntt请按任意数字键返回主菜单); scanf(%d,&j); return; void searchbyqq()/*按QQ查询*/ int mark=0; int i,j; long int QQ; printf(ntt 按QQ号码查找n); printf(n请输入QQ号码:); scanf(%ld,&QQ); for(i=0;inum;i+) if(peri.QQ=QQ) printf(ntt 以下是您查找的联系人的信息); printf(ntt_); printf(ntt名字: %s,

19、peri.name); printf(ntt性别: %s,peri.sex); printf(ntt年龄: %d,peri.nianling); printf(ntt邮编 : %ld,peri.youbian);printf(ntt地址: %s,peri.addr);printf(ntt手机号码: %s,peri.celephone);printf(ntt家庭电话号码:%s,peri.homephone); printf(ntt公司名称:%s,pany);printf(ntt电子邮件:%s,peri.email);printf(nttQQ号码:%ld,peri.QQ);printf(ntt_)

20、; printf(ntt请按任意数字键返回主菜单); mark+; scanf(%d,&j); return; if (mark=0) printf(ntt对不起!没有该联系人的信息!); printf(ntt请按任意数字键返回主菜单); scanf(%d,&j); return; void deletemenu()/*删除菜单*/ int i,j; system(cls);system(color 3b); if(num=0) printf(ntt对不起!文件中无任何纪录!);printf(ntt请先添加个人信息!);printf(ntt请按任意数字键返回主菜单); scanf(%d,&j)

21、; return; else printf(ntt 删 除 菜 单 ); printf(ntt 1-删除单个 ); printf(ntt 2-返回主菜单 ); printf(ntt ); printf(ntt请输入您的数字选择: ); loop4: scanf(%d,&i); switch (i) case 1:deleteone();break; case 2:mainmenu();break; default:printf(对不起!您的输入有误!请重新输入: );goto loop4; void deleteone()/*删除单个*/ int i; printf(ntt1-按手机号码删除

22、2-按姓名删除); printf(ntt请输入您的选择:); loop5:scanf(%d,&i); switch (i) case 1:deletebycelephone();break; case 2:deletebyname();break; default:printf(对不起!您的输入有误!请重新输入: );goto loop5; void deletebyname()/姓名删除*/ int a=0; int findmark=0; int i,j,k; int deletemark=0; char name15; printf(ntt请输入您要删除的联系人的姓名:); scanf(

23、%s,name); for (i=a;inum;i+) if (strcmp(peri.name,name)=0) printf(ntt以下是您要删除的联系人的纪录:); findmark+; printf(ntt_); printf(ntt名字: %s,peri.name); printf(ntt性别: %s,peri.sex); printf(ntt年龄: %d,peri.nianling); printf(ntt邮编 : %ld,peri.youbian);printf(ntt地址: %s,peri.addr);printf(ntt手机号码: %s,peri.celephone);pri

24、ntf(ntt家庭电话号码:%s,peri.homephone); printf(ntt公司名称:%s,pany);printf(ntt电子邮件:%s,peri.email);printf(nttQQ号码:%ld,peri.QQ);printf(ntt_); printf(ntt是否删除?(1代表删除;2代表不删除)n);printf(ntt请输入您的数字选择: ); scanf(%d,&k); if(k=1) for (j=i;jnum-1;j+) /*纪录移动,从per数组中删除之*/ perj=perj+1; num-; deletemark+; printf(ntt删除成功); if(

25、i+1)num) printf(ntt是否继续删除相同姓名的联系人的信息?(1代表删除;2代表不删除)); printf(ntt请输入您的数字选择: ); scanf(%d,&k); if(k=1) a=i; findmark+;continue; printf(ntt是否继续删除?(1代表继续;2代表不继续)); printf(ntt请输入您的数字选择: ); scanf(%d,&k); if(k=1) deleteone(); elsebreak; else continue; if(deletemark=0)&(findmark=0) printf(ntt对不起!没有该联系人的纪录!);

26、 printf(ntt是否继续删除?(1代表继续;2代表不继续)); printf( 请输入您的数字选择: );scanf(%d,&k);if(k=1) deleteone(); else if(findmark!=0) printf(ntt对不起!没有重名信息!); printf(ntt是否继续删除?(1代表继续;2代表不继续)); printf( 请输入您的数字选择: );scanf(%d,&k); if(k=1) deleteone(); void deletebycelephone()/*按手机号码删除*/ int i,j,h,m; int deletemark=0; char cel

27、ephone11; printf(ntt请输入要删除的联系人的手机号码:); scanf(%s,celephone); for(i=0;inum;i+) if(strcmp(peri.celephone,celephone)=0) deletemark+;printf(ntt以下是您要删除的联系人的纪录:);printf(ntt_); printf(ntt名字: %s,peri.name); printf(ntt性别: %s,peri.sex); printf(ntt年龄: %d,peri.nianling); printf(ntt邮编 : %ld,peri.youbian);printf(n

28、tt地址: %s,peri.addr);printf(ntt手机号码: %s,peri.celephone);printf(ntt家庭电话号码:%s,peri.homephone); printf(ntt公司名称:%s,pany);printf(ntt电子邮件:%s,peri.email);printf(nttQQ号码:%ld,peri.QQ);printf(ntt_); printf(ntt是否删除?(1代表删除;2代表不删除)n); printf( 请输入您的数字选择: );scanf(%d,&h); if(h=1) for (j=i;jnum-1;j+) /*纪录移动,从per数组中删除

29、之*/ perj=perj+1; num-; printf(ntt删除成功); printf(n是否继续删除?(1代表继续;2代表不继续)n); printf( 请输入您的数字选择: );scanf(%d,&h); if(h=1) deletebycelephone(); if(deletemark=0) printf(ntt对不起!没有该联系人的纪录!); printf(ntt是否继续删除?(1代表继续;2代表不继续)n); printf( 请输入您的数字选择: );scanf(%d,&m); if(m=1) deletebycelephone(); void xiugaimenu()/*修

30、改菜单*/int i,j; system(cls);system(color 3f);if(num=0) printf(ntt对不起!文件中无任何纪录!); printf(ntt请按任意数字键返回主菜单); scanf(%d,&j); return; else printf(ntt 1-按姓名修改 2-按手机号码修改n); printf( 请输入您的数字选择: );loop6:scanf(%d,&i); switch (i) case 1:xiugaibyname();break; case 2:xiugaibycelephone();break; default:printf(对不起!您的输

31、入有误!请重新输入: );goto loop6; void xiugaibyname()/*按姓名修改*/int a=0; int findmark=0; int xiugaimark=0; int i,j; char name15; printf(ntt请输入要修改联系人的姓名:); scanf(%s,name); for (i=a;inum;i+) if (strcmp(peri.name,name)=0) printf(ntt以下是您要修改的联系人的纪录:); findmark+; printf(ntt_); printf(ntt名字: %s,peri.name); printf(ntt性别: %s,peri.sex); printf(ntt年龄: %d,peri.nianling); printf(ntt邮编 : %ld,peri.youbia

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服