




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineboolint#definetrue1#definefalse0FILE*fp;structtongxunlu /*定义通讯录结构体变量*/(charxingming[20]; /*定义输入名字的数组*/chardianhua[20];/*定义输入电话号码的数组*/chardizhi[40];/*定义输入地址的数组*/charshouji[11];//手机号码charyouxiang[20];/*定义输入邮箱的数组*/charbeizhu[40];/*定义输入备注的数组*/charxuehao[10];/*定义输入学号的数组*/charyunying[20];}txl[100];//默认100个数据intn=0;//记录数据联系人数量intx,y,z,*p;charch;booljudge=true;typedefstruct(charuser[20];charcode[20];}USER;USERpe;voidzhuce();voiddenglu();voidpanduan(inti);voidzengjia();voidwritefile();voidredfile();voidwrite();voidcaozuo();voidchazhao();voidchazhao_xingming();voidchazhao_dianhua();voidxianshi();voidxiugai();voidxiugai_xingming();
voidxiugai_dianhua();voidshanchu();voidshanchu_quanbu();voidshanchu_dange();voidmain()printf(欢迎使用联系人管理系统\n");printf(欢迎使用联系人管理系统\n");printf("\t\t1.用户登陆2.用户注册3.退出");ch=getch();if(ch=='1'||ch=='2')(switch(ch)(case'1':system("cls");denglu();break;case'2':system("cls");zhuce();break;default:printf("error!");))if(ch=='1'||ch=='2')writefile();elseprintf("\n\t\tByeA_A");exit(0);)voidcaozuo()(printf("\n\t\t1.添加联系人2.查找3.修改4.删除5.保存退出6.不保存退出7.保存并注销8.注销不保存");ch=getch();switch(ch)(case'1':system("cls");zengjia();break;case'2':system("cls");chazhao();break;case'3':system("cls");xiugai();break;case'4':system("cls");shanchu();break;case'5':system("cls");writefile();break;case'6':printf("\n\t\tByeA_A");exit(0);case'7':printf("\n\t\t正在保存,请稍后......\n\t\t注销成功");writefile();break;case'8':fclose(fp);printf("\n\t\t注销成功");returnmain();break;default:printf("\n\t\terror!");returncaozuo();)
/*用户信息写入/*用户信息写入*/(if((fp=fopen(pe.user,"w"))==NULL)(printf("\n\t\t文件打开失败");)elseif(fwrite(&pe,sizeof(USER),1,fp)!=1)(printf("\n\t\t写入文件错误");))voidwritefile() /*联系人写入文件*/(inti;if((fp=fopen(pe.user,"a"))==NULL)(printf("\n\t\t文件打开失败");)for(i=0;i<n;i++)(if(fwrite(&txl[i],sizeof(structtongxunlu),1,fp)!=1)(printf("\n\t\t写入文件错误!\n");))fclose(fp);/*关闭文件*/printf("\n\t ");printf("\n\t\t联系人文件已保存");printf("\n\t\t谢谢使用,欢迎再次使用!\n");printf("\t\t如果对本软件有疑问,请给我们提出您的问题,我们将为您解答.\n");printf("\t\t我们的软件有不足之处请与我们反映,我们将努力改正!”);printf("\n\t\t按任意键退出程序\n\t\t");exit(0);printf("\n\t ");)voidreadfile()(fseek(fp,0,2);if(ftell(fp)>0)(rewind(fp);fseek(fp,sizeof(USER),1);for(n=0;!feof(fp)&&fread(&txl[n],sizeof(structtongxunlu),1,fp);n++);)else(rewind(fp);fseek(fp,sizeof(USER),1);printf("\t\t联系人为空");)printf("\n\t欢迎使用,按任意键进入");)voidzhuce()(chartemp[20],txt[100],cha;do(printf("\t\t\t\t用户注册");printf("\n\t\t1.直接注册2.阅读用户手册”);cha=getch();if(cha=='2')(if((fp=fopen("使用说明.txt","r"))==NULL)(printf("\n\t\t打开失败");exit(0);)fread(txt,2,20,fp);printf("\n\t\t%s",txt);/*txt=fgets(txt,100,fp);printf("%s",txt);*/)printf("\n\t\t按任意键继续");getch();system("cls");printf("\t\t\t\t用户注册");printf("\n\t\t用户名:");scanf("%s",pe.user);printf("\n\t\t密码:");scanf("%s",pe.code);printf("\n\t\t确认密码:");scanf("%s",temp);if(strcmp(pe.code,temp)!=0)printf("\n\t\t两次密码不一致,请重新输入");}while(strcmp(pe.code,temp)!=0);fp=fopen(pe.user,"r");if(fp==NULL)(fp=fopen(pe.user,"w");if(fp==NULL)(printf("\n\t注册失败\n");exit(0);)else{system("cls");printf("\n\t注册成功");write();judge=false;denglu();))else{printf("\n\t该用户名已存在");fclose(fp);printf("\n\t继续注册?(Y/N)");if(getch()=='Y')returnzhuce();elsereturndenglu();))voiddenglu(){charu[20],c[20],temp[20];printf("\n\t\t\t\t用户登录");printf("\n\t\t用户名:");scanf("%s",u);fp=fopen(u,"r+");temp[0]='0';if(fp==NULL){printf("\n\t\t用户不存在,请注册");printf("\n\t\t1.注册2.重新登陆");temp[0]=getch();if(temp[0]=='1'){system("cls");zhuce();)elsereturndenglu();)do(if(judge==true)fread(&pe,sizeof(USER),1,fp);printf("\t\t密码:");scanf("%s",c);if(strcmp(pe.code,c)!=0)(printf("\n\t\t密码错误(1.退出2.重新输入)”);temp[0]=getch();printf("\n");if(temp[0]=='1')(fclose(fp);returnmain();))}while(temp[0]=='2');readfile();getch();caozuo();}voidzengjia()(chartemp,temp2;printf("\n\t\t 请输入联系人信息 -\n");do(if(temp=='2')system("cls");printf("\n\t\t输入联系人姓名:“);scanf("%s",txl[n].xingming); /*键盘输入*/printf("\n\t\t输入联系人电话号码:");scanf("%s",txl[n].dianhua);printf("\n\t\t输入联系人地址:");scanf("%s",txl[n].dizhi);panduan(n);printf("\n\t\t是否确定?(1.确定2.重输3.取消)”);getch();temp=getch();}while(temp=='2');if(temp=='1'){n++; /*统计个数*/printf("\n\t\t是否继续添加联系人?(Y/N):");/*是否继续输入联系人.*/temp2=getch();if(temp2=='Y'||temp2=='y')zengjia();)printf("\n");returncaozuo();)voidpanduan(inti){char*str1="ChinaMobile",*str2="ChinaUnicom",*str3="ChinaTelicom",*str4="Virtualnetworkoperator";booljudge=true;do{do{printf(("\n\t\t输入手机号码:"));scanf("\n\t\t%s",txl[i].shouji);if(txl[i].shouji[10]=='\0'11txi[i].shouji[11]!='\0')printf("Error!Again\n");}while(txl[i].shouji[10]=='\0'11txi[i].shouji[11]!='\0');x=txl[i].shouji[1];x-=48;y=txl[i].shouji[2];y-=48;z=x*10+y;if((z>=34&&z<=39)||(z>=47&&z<=152)||(z>=157&&z<=159)||z==178||(z>=183&&z<=188)){printf("\n\t\t%s\n",str1);strcpy(txl[i].yunying,str1);}elseif((z>=30&&z<=32)||z==145||z==155||z==156||z==171||z==175||z==176||z==185||z==186){printf("\n\t\t%s\n",str2);strcpy(txl[i].yunying,st⑵;}elseif(z==33||z==49||z==53||z==73||z==77||z==80||z==81||z==89){printf("\n\t\t%s\n",str3);strcpy(txl[i].yunying,str3);}elseif(z==70){printf("%s\n",str4);strcpy(txl[i].yunying,str4);}else{printf("Error!Checkagain\n");judge=false;}}while(judge==false);}///查询联系人函数开始模块四 voidchazhao()(charc;system("cls");TOC\o"1-5"\h\zprintf("\n\t\t 显示和查询联系人 ");printf("\n\t\t| 1-逐个显示所有 2-按姓名查询 |");printf("\n\t\t| 3-按电话查询 4-返回主菜单 |");printf("\n\t\t| ");printf("\n\t\t请选择您所所要的服务:”);c=getch();switch(c)(case'1':xianshi();break; /*显示所有号码*/case'2':chazhao_xingming();break;/*调用按姓名查询函数*/case'3':chazhao_dianhua();break;/*调用按号码查询函数*/case'4':caozuo();break;/*主菜单*/))voidxianshi()//显示所有联系人函数(inti;system("cls");//清楚屏幕if(n!=0)(printf("\n\t\t 欢迎您查询通讯录所有联系人信息 -);for(i=0;i<n;i++) /*依次序显示*/(printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t ");if(i+1<n)(printf("\n\t\t ");system("pause");/您回错误信息))printf("\n\t\t ");)else /*无联系人*/printf("\n\t\t通讯录中无任何纪录");printf("\n\t\t按任意键返回主菜单:");getch();returncaozuo();)〃按号码查询函数voidchazhao_dianhua()(intmark=0;inti;charphone[15];printf("\n\t\t 按电话查找 ");do{printf("\n\t\t请输入电话号码或手机号码巧;scanf("%s",phone);if(phone[10]=='\0'||phone[11]!='\0')printf("Error!Again\n");}while(phone[10]=='\0'||phone[11]!='\0');for(i=0;i<n;i++){if(strcmp(txl[i].dianhua,phone)==0||strcmp(txl[i].shouji,phone)==0)//对比查找函数{printf("\n\t\t 以下是您查找的学生信息 -);printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t ");printf("\n\t\t按任意键返回主菜单:");mark++;getch();returncaozuo();}}if(mark==0){printf("\n\t\t没有找到联系人的信息)printf("\n\t\t按任意键返回主菜单");getch();returncaozuo();}}voidchazhao_xingming()//按姓名查询{intmark=0;inti;charname[20];");printf("\n\t\t 按姓名查找 ");printf("\n\t\t请输入您要查找的姓名门;scanf("%s",name);for(i=0;i<n;i++)(if(strcmp(txl[i].xingming,name)==0)(printf("\n\t\t 以下是您查找的联系人信息 -);printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t ");mark++;getch();returnchazhao();))if(mark==0)(printf("\n\t\t没有找到联系人的信息)printf("\n\t\t按任意键返回主菜单");getch();returncaozuo();))〃〃查询联系人函数结束 〃〃删除联系人函数部分开始 voidshanchu()(charc;if(n==0) /*如果通讯录中没有一个记录输出以下部分*/(printf("\n\t\t对不起,文件中无任何纪录");printf("\n\t\t按任意键返回主菜单");getch();returncaozuo();)system("cls"); /*清屏*/TOC\o"1-5"\h\zprintf("\n\t\t 删除菜单 ");printf("\n\t\t| 1-删除所有2-删除单个 |");printf("\n\t\t| 3-返回主菜单 |");printf("\n\t\t| ");printf("\n\t\t请选择您所所要的服务:”);c=getch();/*输入的赋予choice*/switch(c)(case'1':shanchu_quanbu();break;case'2':shanchu_dange();break;case'3':caozuo();break;default:caozuo();break;))voidshanchu_quanbu()//删除所有联系人(printf("\n\t\t确认删除?(y/n)");if(getch()=='y')(fclose(fp);if((fp=fopen("通讯录.txt","w"))==NULL) /*文件空输出*/(printf("\n\t\t不能打开文件,删除失败");readfile();)n=0;printf("\n\t\t纪录已删除,按任意键返回主菜单");getch();returncaozuo();)elsereturncaozuo();)voidshanchu_xingming()//按姓名删除联系人(inti,m,mark=0,a=0;charname[20];printf("\n\t\t请输入要删除联系人姓名:”);scanf("%s",name); /*键盘输入姓名*/for(i=a;i<n;i++)(if(strcmp(txl[i].xingming,name)==0)//X对比字符串查找到要删除的联系人(printf("\n\t\t以下是您要删除的联系人纪录:");printf("\n\t\t ");printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t ");printf("\n\t\t是否删除?(y/n)");if(getch()=='y')//实现删除功能(for(m=i;m<n-1;m++)txl[m]=txl[m+1]; /*将通讯录的向前移*/n--;mark++;printf("\n\t\t删除成功");printf("\n\t\t是否继续删除?(y/n)");if(getch()=='y')shanchu_xingming(); /*继续调用删除函数*/returncaozuo();)elsereturnshanchu_xingming();)continue;)if(mark==0)(printf("\n\t\t没有该联系人的纪录");printf("\n\t\t是否继续删除?(y/n)");if(getch()=='y')shanchu_xingming();returncaozuo();))voidshanchu_dianhua()//按电话号码删除联系人(inti,m,mark=0; /*变量定义*/charphone[20];do(printf("\n\t\t请输入要删除联系人电话号码或手机号码:");scanf("%s",phone);if(phone[10]=='\0'||phone[11]!='\0')printf("Error!Again\n");}while(phone[10]=='\0'||phone[11]!='\0');if(n==0)(printf("\n\t\t对不起,文件中无任何纪录");printf("\n\t\t按任意键返回主菜单");getch();returncaozuo();)for(i=0;i<n;i++)(if(strcmp(txl[i].dianhua,phone)==0||strcmp(txl[i].shouji,phone)==0)(printf("\n\t\t以下是您要删除的联系人纪录:");printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t是否删除?(y/n)");if(getch()=='y')(for(m=i;m<n-1;m++)//递推替换实现删除txl[m]=txl[m+1];n--;mark++;//记录删除次数printf("\n\t\t删除成功");printf("\n\t\t是否继续删除?(y/n)");if(getch()=='y')shanchu_dianhua();returncaozuo();)elsereturnshanchu_dianhua();)continue;)if(mark==0)(printf("\n\t\t没有该联系人的纪录");printf("\n\t\t是否继续删除?(y/n)");if(getch()=='y')returncaozuo();))voidshanchu_dange()//删除单个联系人(charc;printf("\n\t ");printf("\n\t\t 1-按姓名删除 2-按电话或手机号码删除");printf("\n\t\t请选择您所所要的服务:”);printf("\n\t ");c=getch();switch(c)(case'1':shanchu_xingming();break;case'2':shanchu_dianhua();break;))〃/删除函数部分结束 〃/修改联系人函数开始 voidxiugai() /*修改函数*/(charc;if(n==0)(printf("\n\t\t对不起,文件中无任何纪录");printf("\n\t\t按任意键返回主菜单");getch();returncaozuo();)system("cls");TOC\o"1-5"\h\z\o"CurrentDocument"printf("\n\t\t 修改联系人菜单 ");printf("\n\t\t| 1-按姓名修改 2-按电话或手机号码修改 |");printf("\n\t\t| 任意键-按返回主菜单 |");printf("\n\t\t ");c=getch();switch(c)(case'1':xiugai_xingming();break;case'2':xiugai_dianhua();break;default:caozuo();break;))voidxiugai_xingming()(charc;inti,mark=0;charname[20];printf("\n\t\t请输入要修改的联系人姓名:”);scanf("%s",name);if(n==0)(printf("\n\t\t文件中无任何联系人");printf("\n\t\t按任意键返回主菜单");getch();mark++;returncaozuo();)for(i=0;i<n;i++)(if(strcmp(txl[i].xingming,name)==0)(printf("\n\t\t以下是您要修改的联系人信息)printf("\n\t\t姓名:%s",txl[i].xingming);printf("\n\t\t电话:%s",txl[i].dianhua);printf("\n\t\t地址:%s",txl[i].dizhi);printf("\n\t\t手机:%s(%s)",txl[i].shouji,txl[i].yunying);printf("\n\t\t是否修改(y/n)");if(getch()=='y')(TOC\o"1-5"\h\zprintf("\n\t 请选择修改信息 ");printf("\n\t 1-修改姓名 2-修改电话 ");printf("\n\t 3-修改地址 4-修改手机号码 ");printf("\n\t ");printf("\n\t请选择您所所要的服务:”);scanf("%c",&c);switch(c)(case'1':printf("\n\t请输入新姓名:");scanf("%s",txl[i].xingming);break;case'2':printf("\n\t请输入新电话: ");scanf("%s",txl[i].dianhua);break;case'3':printf("\n\t请输入新地址:");scanf("%s",txl[i].dizhi);break;case'4':do(printf("\n\t请输入新手机号码:");scanf("%s",txl[i].shouji);if(txl[i].shouji[10]=='\0'11txi[i].shouji[11]!='\0')printf("Error!Again\n");}while(txl[i].shouji[10]=='\0'11txi[i].shouji[11]!='\0');break;}}}}if(mark==0)(printf("\n\t\t没有找到联系人信息”);printf("\n\t是否继续修改?(Y/N):");if(getch()=='y')xiugai_xingming();returncaozuo();))voidxiugai_di
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电动工具生产线项目可行性研究报告(范文)
- 技术服务合同示范文本
- 大班音乐活动课件
- 大班隐私安全课件
- 妇科专科试题及答案
- 2025年早教中心协议
- 计划工作报告
- 南充初二数学试题及答案
- 耐药试题及答案
- 购买写字楼合同协议书
- 商务英语写作实践智慧树知到答案章节测试2023年中北大学
- 社会治安动态视频监控系统工程建设方案
- 脱硫塔玻璃鳞片胶泥衬里施工组织设计
- XB/T 505-2011汽油车排气净化催化剂载体
- GB/T 3672.2-2002橡胶制品的公差第2部分:几何公差
- GB/T 27744-2021异步起动永磁同步电动机技术条件及能效分级(机座号80~355)
- GB 8076-2008混凝土外加剂
- 宝盾转门故障代码
- 【课件】草原上的小木屋
- 医务人员违规行为与年度考核挂钩制度
- 空调维保质量保障体系及措施方案
评论
0/150
提交评论