1、用C语言编写通讯录#include#includetypedef struct Friendschar sName30;int tel;int sMovtel;int home;char Emaile30;char assort30;Friends;int c;void jianli ();void search ();void amend ();void change ();void input (Friends *p);void output (Friends *p);void sdele ();void fugai ();int main()int a,b=1;char s;while(
2、b=1) printf(tt通讯录n); printf(t1、新建n); printf(t2、查找n); printf(t3、修改n); printf(t4、删除n); printf(请选择.n); scanf(%d,&a); switch(a) case 1:jianli ();break; case 2:search ();break; case 3:amend ();break; case 4:sdele();break; printf(是否返回主菜单(YorN)n); fflush(stdin); scanf(%c,&s); if(s=y| s=Y) b=1; else break;r
3、eturn 0;/*新建*/void jianli ()int b=1;char d;Friends x;FILE *fp;fp=fopen(e:通讯录.txt,ab);while (b=1) input(&x); fwrite(&x,sizeof(x),1,fp); printf(是否继续新建(YorN)?n); fflush(stdin); scanf(%c,&d); if(d=y|d=Y) b=1; else break;fclose(fp);/*查找*/void search ()int h , j = 1 , n=0 , num ;char k20;FILE *fp;Friends
4、y;printf(t1、按号码查找n);printf(t2、按姓名查找n);printf(请选择.n);scanf(%d,&h);if(h=1) printf(t请输入你查找的号码!n); while(j=1) scanf(%d,&num); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) fread(&y,sizeof(y),1,fp); if(num=y.sMovtel) output(&y); break; if(num!=y.sMovtel) printf(你输入的号码有误!n请重新输入n); j=1; fclose(fp); if(h=2) print
5、f(t请输入你查找的姓名!n); while(j=1) scanf(%s,k); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) fread(&y,sizeof(y),1,fp); if(strcmp(k,y.sName)=0) output(&y); break; if(strcmp(k,y.sName)!=0) printf(你输入的姓名有误!n请重新输入n); j=1; fclose(fp); /*修改*/void amend ()int h , j = 1 , n=0 , num ;char k20;FILE *fp;Friends y;printf(t
6、1、按号码查找你所需要修改的原始资料n);printf(t2、按姓名查找你所需要修改的原始资料n);printf(请选择.n);scanf(%d,&h);if(h=1) printf(t请输入查找你的号码!n); while(j=1) scanf(%d,&num); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) c+; fread(&y,sizeof(y),1,fp); if(num=y.sMovtel) change (); break; if(num!=y.sMovtel) printf(你输入的号码有误!n请重新输入n); j=1; fclose(fp)
7、; if(h=2) printf(t请输入你查找的姓名!n); while(j=1) c+; scanf(%s,k); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) fread(&y,sizeof(y),1,fp); if(strcmp(k,y.sName)=0) change (); break; if(strcmp(k,y.sName)!=0) printf(你输入的姓名有误!n请重新输入n); j=1; fclose(fp); /*删除*/void sdele()int h , j = 1 , n=0 , num ;char k20;FILE *fp;F
8、riends y;printf(t1、按号码查找你所需要修改的原始资料n);printf(t2、按姓名查找你所需要修改的原始资料n);printf(请选择.n);scanf(%d,&h);if(h=1) printf(t请输入查找你的号码!n); while(j=1) scanf(%d,&num); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) fread(&y,sizeof(y),1,fp); if(num=y.sMovtel) fugai (); break; if(num!=y.sMovtel) printf(你输入的号码有误!n请重新输入n); j=1
9、; fclose(fp); if(h=2) printf(t请输入你查找的姓名!n); while(j=1) scanf(%s,k); fp=fopen(e:通讯录.txt,rb); while(!feof(fp) fread(&y,sizeof(y),1,fp); if(strcmp(k,y.sName)=0) fugai (); break; if(strcmp(k,y.sName)!=0) printf(你输入的姓名有误!n请重新输入n); j=1; fclose(fp); void change ()/*用于修改*/int f,j;FILE *fp;Friends z ;j=c*133
10、;printf(你要修改的内容:n);printf(t1、姓名nt2、手机号nt3、固定电话号码n);printf(t4、电子信箱nt5、家庭住址、nt6、分类n);printf(请选择.n);scanf(%d,&f);printf(输入你的新信息!n);switch(f)case 1:fp=fopen(e:通讯录.txt,wb); fread(&z,sizeof(z),1,fp); fseek(fp,j,SEEK_SET); scanf(%s,z.sName); fwrite(&z.sName,sizeof(z.sName),1,fp); fclose(fp); output (&z); b
11、reak; fclose(fp);case 2:fp=fopen(e:通讯录.txt,rb); fread(&z,sizeof(z),1,fp); fseek(fp,(j+31),SEEK_SET); scanf(%d,&z.sMovtel); fwrite(&z.sMovtel,sizeof(z.sMovtel),1,fp); fclose(fp); break;case 3:fp=fopen(e:通讯录.txt,rb); fread(&z,sizeof(z),1,fp); fseek(fp,(j+35),SEEK_SET); scanf(%d,&z.tel); fwrite(&z.tel,
12、sizeof(z.tel),1,fp); fclose(fp);case 4:fp=fopen(e:通讯录.txt,rb); fread(&z,sizeof(z),1,fp); fseek(fp,(j+73),SEEK_SET); scanf(%s,z.Emaile); fwrite(&z.Emaile,sizeof(z.Emaile),1,fp); fclose(fp); break;case 5:fp=fopen(e:通讯录.txt,rb); fread(&z,sizeof(z),1,fp); fseek(fp,(j+69),SEEK_SET); scanf(%d,&z.home); fw
13、rite(&z.home,sizeof(z.home),1,fp); fclose(fp); break;case 6:fp=fopen(e:通讯录.txt,rb); fread(&z,sizeof(z),1,fp); fseek(fp,(j+103),SEEK_SET); scanf(%d,&z.assort); fwrite(&z.assort,sizeof(z.assort),1,fp); fclose(fp); break;void input (Friends *p)/*输入*/printf(请输入姓名:n);scanf(%s,p-sName);printf(请输入手机号码:n);s
14、canf(%d,&p-sMovtel);printf(请输入固定电话号码:n);scanf(%d,&p-tel);printf(请输入电子信箱:n);scanf(%s,p-Emaile);printf(输入家庭住址);scanf(%s,p-home);printf(请分类:n);scanf(%s,p-assort);void output (Friends *p)/*输出*/printf(*n);printf(%sn,p-sName);printf(%dn,p-sMovtel);printf(%dn,p-tel);printf(%sn,p-Emaile);printf(%dn,p-home);printf(%sn,p-assort);void fugai ()/*用于删除 */Friends d;FILE *fp;fp=fopen(e:通讯录.txt,rb);fread(&d,sizeof(d),1,fp);感谢下载!欢迎您的下载,资料仅供参考
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2