c语言 通讯录管理系统 课程设计 源程序.docx

上传人:小飞机 文档编号:3155197 上传时间:2023-03-11 格式:DOCX 页数:31 大小:40.40KB
返回 下载 相关 举报
c语言 通讯录管理系统 课程设计 源程序.docx_第1页
第1页 / 共31页
c语言 通讯录管理系统 课程设计 源程序.docx_第2页
第2页 / 共31页
c语言 通讯录管理系统 课程设计 源程序.docx_第3页
第3页 / 共31页
c语言 通讯录管理系统 课程设计 源程序.docx_第4页
第4页 / 共31页
c语言 通讯录管理系统 课程设计 源程序.docx_第5页
第5页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《c语言 通讯录管理系统 课程设计 源程序.docx》由会员分享,可在线阅读,更多相关《c语言 通讯录管理系统 课程设计 源程序.docx(31页珍藏版)》请在三一办公上搜索。

1、c语言 通讯录管理系统 课程设计 源程序#include <stdio.h>struct record char name20;char post20; char tel20; char email20;char qq13; char mobile13; char zhuzi20; Tel500; int Num; FILE *fp; void menu_select; /*系统主菜单*/ int LoadData;/*初始时加载数据and导入建立文件*/void Input; /*录入联系人信息*/void Display; /*浏览所有联系人信息*/void Search; /*查

2、找联系人菜单*/void DisplayDetails;/*按姓名查找*/void searchtel;/*按电话查找*/void Modify; /*修改联系人菜单*/void Delete; /*删除联系人菜单*/void deleteall;/*删除所有*/void deletesingle;/*删除单个*/void deletename;/*按姓名删除*/void deletetel;/*按电话删除*/void Save; /*保存联系人文件*/void main printf(nttt欢迎使用通讯录管理系统); printf(nttt努力导入中!nttt请稍后nnnnn); Load

3、Data; while (1) menu_select; void menu_select char srxz; system(cls);printf(nn);printf(ntt*主菜单 *); printf(ntt* *);printf(ntt* 1-新建菜单 *); printf(ntt* *);printf(ntt* 2-浏览菜单 *);printf(ntt* *);printf(ntt* 3-查找菜单 *); printf(ntt* *);printf(ntt* 4-修改菜单 *); printf(ntt* *);printf(ntt* 5-删除菜单 *); printf(ntt*

4、*);printf(ntt* 6-退 出 *); printf(ntt* *);printf(ntt*); printf(ntt 请选择:); srxz=getchar; switch (srxz) case 1:Input;break; case 2:Display;break; case 3:Search;break; case 4:Modify;break; case 5:Delete;break; case 6:exit(0); default:menu_select; void Input system(cls); printf(ntt* 敲入联系人信息PLEASE *n); pri

5、ntf(ntt 敲入姓名:); scanf(%s,&TelNum.name); printf(ntt 敲入工作单位:); scanf(%s,&TelNum.post); printf(ntt 敲入联系电话:); scanf(%s,&TelNum.tel); printf(ntt 敲入Email地址:); scanf(%s,&TelNum.email);printf(ntt 敲入qq:); scanf(%s,&TelNum.qq); printf(ntt 敲入手机:); scanf(%s,&TelNum.mobile); printf(ntt 敲入住址:); scanf(%s,&TelNum.z

6、huzi);Num+; Save; printf(ntt 是否继续添加(y/n):); if (getch=y) Input; return; void Display int i; system(cls); if(Num!=0) printf(ntt* 以下为通讯录所有信息,请君过目*); for (i=0;i<Num;i+) printf(nntt %d):,i+1);printf(ntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post); printf(ntt 联系电话: %s,Teli.tel); printf(ntt Email

7、地址: %s,Teli.email);printf(ntt QQ : %s,Teli.qq);printf(ntt 手机号码: %s,Teli.mobile);printf(ntt 住址: %s,Teli.zhuzi);if(i<(Num-1)&(i+1)%3=0)printf(nntt 按任意键继续下一页:);getch;system(cls);printf(ntt* 以下为通讯录所有信息,请君过目*); printf(ntt*); else printf(ntt通讯录中无任何纪录); printf(nntt 按任意键返回主菜单:); getch; return; void Search

8、 char srxz; system(cls); printf(nntt* 查找菜单 *); printf(nntt* 1-按姓名查找 *); printf(nntt* 2-按电话查找 *); printf(nntt* 3-返回主菜单 *); printf(nntt*); printf(nntt 请选择:); srxz=getch; switch (srxz) case 1:DisplayDetails;break;case 2:searchtel;break; case 3:menu_select;break; void DisplayDetails int mark=0; int i; i

9、nt a=0; char name20;system(cls); printf(ntt* 按姓名查找 *); printf(ntt 请输入姓名:); scanf(%s,name); for(i=a;i<Num;i+) if (strcmp(Teli.name,name)=0) system(cls); printf(ntt* 以下是您查找的联系人信息 *); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post); printf(ntt 联系电话: %s,Teli.tel); printf(ntt Email地址: %s

10、,Teli.email); printf(ntt QQ : %s,Teli.qq);printf(ntt 手机号码: %s,Teli.mobile);printf(ntt 住址: %s,Teli.zhuzi);printf(ntt*); printf(nntt 按任意键返回主菜单:); mark+; getch; return; if(mark=0) printf(ntt 没有该姓名的联系人纪录); printf(nntt 按任意键返回主菜单); getch; return; void searchtel() int mark=0; int i; int a=0;char tel20;syst

11、em(cls); printf(ntt* 按电话查找 *); printf(ntt 请输入电话:); scanf(%s,tel); for(i=0;i<Num;i+) if (strcmp(Teli.tel,tel)=0) system(cls); printf(ntt* 以下是您查找的联系人信息 *); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post); printf(ntt 联系电话: %s,Teli.tel); printf(ntt Email地址:%s,Teli.email); printf(ntt QQ

12、: %s,Teli.qq);printf(ntt 手机号码: %s,Teli.mobile);printf(ntt 住址: %s,Teli.zhuzi);printf(ntt*); printf(nntt 按任意键返回主菜单:); mark+; getch; return; if (mark=0) printf(ntt 没有该联系人信息); printf(nntt 按任意键返回主菜单); getch; return; void Modify int mark=0; int i,k; int a=0; int t=0; char srxz; char name20; struct record

13、modify; system(cls); printf(ntt 请输入您要修改的姓名:); scanf(%s,name); for(i=a;i<Num;i+) if (strcmp(Teli.name,name)=0) k=i;mark=1;modify=Teli;system(cls); printf(ntt* 以下是您将修改的联系人信息 *); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位:%s,Teli.post); printf(ntt 联系电话:%s,Teli.tel); printf(ntt Email地址:%s,Teli.em

14、ail); printf(ntt QQ : %s,Teli.qq);printf(ntt 手机号码: %s,Teli.mobile);printf(ntt 住址: %s,Teli.zhuzi);printf(nntt 是否继续?y/n); if(getch=n) Modify; else printf(ntt 选择您要修改的选项:); printf(nnttt(1).姓 名); printf(nttt(2).工作单位); printf(nttt(3).联系电话); printf(nttt(4). Email地址); printf(nttt(5). QQ);printf(nttt(6). 手机号

15、码);printf(nttt(7). 居住地址);printf(nttt(8).返 回); printf(nntt 请选择: ); srxz=getch; switch(srxz) case 1: printf(姓 名:); scanf(%s,Teli.name); break; case 2: printf(工作单位:);scanf(%s,Teli.post); break; case 3: printf(联系电话:);scanf(%s,Teli.tel); break; case 4: printf( Email地址:); scanf(%s,Teli.email); break; case

16、 5: printf( QQ:); scanf(%s,Teli.qq);break; case 6: printf(手机:); scanf(%s,Teli.mobile); break; case 7: printf(地址:); scanf(%s,Teli.zhuzi);break; case 8: printf( 返); menu_select;break; default: Modify; system(cls); printf(ntt 您的修改结果为:); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post); pr

17、intf(ntt 联系电话: %s,Teli.tel); printf(ntt Email地址: %s,Teli.email); printf(nntt 确认修改?y/n); if(getch=n) Teli=modify; printf(ntt 修改未保存!); elseprintf(ntt+_+修改成功!); Save;mark+; printf(ntt 是否继续修改(y/n); if (getch=y) Modify; if (mark=0) printf(ntt+_+没有该联系人的纪录); printf(nntt 是否继续修改(y/n); if (getch=y) Modify;ret

18、urn; void Delete char srxz;system(cls);if(Num=0) printf(nttt 对不起,通讯录中无任何纪录); printf(nnttt 按任意键返回主菜单); getch; return; system(cls); printf(nntt* 删除菜单 *); printf(nntt* 1-删除所有 *); printf(nntt* 2-删除单个 *); printf(nntt* 3-返回主菜单 *); printf(nntt*); printf(nntt 请选择:); srxz=getch; switch(srxz) case 1:deleteall

19、;break; case 2:deletesingle;break; case 3:menu_select;break; default:Delete; void deleteall printf(ntt 确认删除(y/n); if (getch=y) if (fp=fopen(Tel,w)=0) printf(ntt+_+不能打开文件,删除失败); fp=fopen(Tel.txt,wb);Num=0;printf(ntt_纪录已删除,按任意键返回主菜单); getch; fclose(fp); return; else return; void deletesingle char srxz

20、;system(cls);printf(nntt* 删除菜单 *);printf(ntt 1-按姓名删除); printf(ntt 2-按号码删除); printf(ntt 3-返回删除菜单); printf(nnt 请选择:); srxz=getch; switch (srxz) case 1:deletename;break; case 2:deletetel;break; case 3:Delete;break; void deletename int i,j; int mark=0; char name20;system(cls);printf(ntt 请输入要删除联系人姓名:); s

21、canf(%s,name); if(Num=0) printf(nttt 对不起,通讯录中无任何纪录); printf(nnttt 按任意键返回主菜单);getch; return; for (i=0;i<Num;i+) if (strcmp(Teli.name,name)=0) printf(ntt 以下是您要删除的联系人纪录:); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post); printf(ntt 联系电话: %s,Teli.tel); printf(ntt Email地址: %s,Teli.email)

22、; printf(nntt 是否删除(y/n); if (getch=y) for (j=i;j<Num-1;j+) Telj=Telj+1; Num-; mark+; printf(ntt_删除成功); Save; printf(ntt 是否继续删除(y/n); if (getch=y) deletename; return; else return; continue; if (mark=0) printf(ntt 没有该联系人的纪录); printf(nntt 是否继续删除(y/n); if (getch=y) deletename; return; void deletetel i

23、nt i,j; int mark=0; char tel20;system(cls);printf(ntt 请输入要删除联系电话:); scanf(%s,tel);if(Num=0) printf(nttt+_+对不起,通讯录中无任何纪录); printf(nnttt 按任意键返回主菜单); getch; return;for (i=0;i<Num;i+) if (strcmp(Teli.tel,tel)=0) printf(ntt 以下是您要删除的联系人纪录:); printf(nntt 姓 名: %s,Teli.name); printf(ntt 工作单位: %s,Teli.post)

24、; printf(ntt 联系电话: %s,Teli.tel); printf(ntt Email地址: %s,Teli.email); printf(nntt 是否删除(y/n); if (getch=y) for (j=i;j<Num-1;j+) Telj=Telj+1; Num-; mark+; printf(ntt_删除成功); Save; printf(ntt 是否继续删除(y/n); if (getch=y) deletetel; return;else return; continue; if (mark=0) printf(ntt+_+没有该联系人的纪录); printf(

25、nntt 是否继续删除(y/n); if (getch=y) deletetel; return; int LoadData FILE *fp; if(fp=fopen(Tel.txt,r)=0) printf(nnnnntttCTM,电话簿文件不存在); if (fp=fopen(Tel.txt,wb)=0) printf(ntttt非常抱歉!建立失败); exit(0); else printf(nttt 好啦,电话簿已建立);printf(nnttt 按任意键进入主菜单); getch; Num=0;return(Num); exit(0); fseek(fp,0,2); if (fte

26、ll(fp)>0) rewind(fp); for (Num=0;!feof(fp) & fread(&TelNum,sizeof(struct record),1,fp);Num+); printf(nnnnttt :)文件导入成功); printf(nnttt 按任意键返回主菜单); getch; return(Num); printf(nnnnttt :)文件导入成功); printf(nttt奇怪!电话簿文件中无任何纪录nttt那你TM存在的意义是什么!); printf(nnttt 按任意键返回主菜单); getch;Num=0;return(Num); void Save int i;if (fp=fopen(Tel.txt,wb)=0)printf(ntt抱歉!文件打开失败!n); for (i=0;i<Num;i+)if (fwrite(&Teli,sizeof(struct record),1,fp)!=1)printf(ntt抱歉!写入文件错误!n); printf(ntt成功保存!n); fclose(fp);

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号