C语言程序通讯录完美版
if(strcmp(t->xm,mt)!=0)
{
printf("您输入的人名不存在!\001\n");
xuanxiang();
}
else xuanxiang();
}
void main()
{
printf("欢迎使用通讯录\n");
counter1=yuanyour();
xuanxiang();
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct txl
{
char xm[11];
char dz[11];
char yb[11];
char dh[11];
}A;
FILE *fp;
int rs;
int counter1=0;
else printf("请输入:");
for(i=0;;i++)
{
scanf("%s",&a[i].xm);
scanf("%s",&a[i].dz);
scanf("%s",&a[i].yb);
scanf("%s",&a[i].dh);
if(strcmp(a[i].xm,"0")==0)break;
if((fp=fopen("f:\\tongxunlu.dat","ab+"))==NULL)
{
printf("can not open this file\n");
exit(0);
}
printf("如果现在想退出输入,请输0继续1\n");
scanf("%d",&l);
if(l==0)xuanxiang();
{
printf("can not open this file\n");
exit(0);
}
printf("原通讯录中人数有:%d人!!!\n",counter1);
fread(&b,sizeof(A),1,fp);
printf("姓名\t\t邮编\t\t地址\t\t电话\n");
for(i=0;!feof(fp);i++)
if(m==2)shuchu();
if(m==3)chazhaom();
if(m==0)
{
printf("谢谢使用!欢迎再用!再见!\001\n");
}
if(m!=1&&m!=2&&m!=3&&m!=4&&m!=5&&m!=6&&m!=0)
{
printf("输入错误,请重输!!!\n");
printf("输入(1)、返回主菜单(2)输出全部(3)查找(4)直接退出(0)\001\n");
void shuru();
void shuchu();
int yuanyour();
void chazhaom();
void xuanxiang()
{
int m;
printf("请输入选项:\n(1)输入(2)输出全部(3)按姓名查找(0)直接退出\001\n");
scanf("%d",&m);
if(m==1)shuru();
xuanxiang();
}
}
int yuanyour()
{
if((fp=fopen("f:\\tongxunlu.dat","ab+"))==NULL)
{
printf("can not open this file\n");
exit(0);
}
while(!feof(fp))
{
fgetc(fp);
counter1++;
else counter++;
}
for(i=0;i<counter;i++)
fwrite(&a[i],sizeof(A),1,fp);
fclose(fp);
rs=counter+counter1;
counter1=rs;
xuanxiang();
}
void shuchu()
{
A b;
int i;
if((fp=fopen("f:\\tongxunlu.dat","rb+"))==NULL)
scanf("%s",mt);
while(!feof(fp))
{
fread(t,sizeof(A),1,fp);
if(strcmp(t->xm,mt)==0)
{
printf("%11s%11s%11s%11s\n",t->xm,t->dz,t->yb,t->dh);
break;
}
}
fclose(fp);
}
fclose(fp);
counter1--;
counter1/=sizeof(A);
return counter1;
}
void shuru()
{
int i,counter=0,l;
A a[100];
printf("原通讯录中人数有:%d人!!!\n",counter1);
printf("请输入你的通讯录,例如:\t姓名通讯地址邮编联系电话\n\n最后输入“0 0 0 0回车”后结束!\n\n");
{
printf("no!");
exit(0);
}
if((fp=fopen("f:\\tongxunlu.dat","rb+"))==NULL)
{
printf("can not open this file\nr mt[11];
printf("请输入您要查找的人名:\n");
{
printf("%s\t\t%s%\t\ts%\t\t%s\n",b.xm,b.dz,b.yb,b.dh);
fread(&b,sizeof(A),1,fp);
}
fclose(fp);
xuanxiang();
}
void chazhaom()
{
A *t;
if(!(t=(A *)malloc(sizeof(A))))