#include <stdio.h>
#include <string.h>
struct list{
char no[2];
char name[10];
char tel[13];
char addr[20];
};
void newfriend(struct list s[]);
void modify(struct list s[]);
void del(struct list s[]);
void search(struct list s[]);
void main()
{
FILE *fp;
struct list s[100];
int num=0;
int i=0;
int choice;
if((fp=fopen("friendlist.txt","r"))==NULL)
{printf("can not open it!\n");
}
printf("%s%s%s%s\n",s[i].no,s[i].name,s[i].tel,s[i].addr);
printf("----------------------\n");
if(fscanf(fp,"%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr)!=EOF)
{
printf("%s%s%s%s\n",s[i].no,s[i].name,s[i].tel,s[i].addr);
i++;
}
printf("----------------------\n");
num=i;
fclose(fp);
do{
printf("通信录功能: 1.新建 2.修改 3.删除 4.查询 0.退出\n");
printf("请选择:");
scanf("%d",&choice);
switch(choice){
case 1:newfriend(s);break;
case 2:modify(s);break;
case 3:del(s);break;
case 4:search(s);break;
case 0:break;
}while(choice!=0);
printf("欢迎使用本程序!\n");
printf("请继续!");
return ;
}
void newfriend(struct list s[]);
{
printf("请输入序号(已存在记录条数加一):");
scanf("%s",s[i].no);
printf("请输入姓名:");
scanf("%s",s[i].name);
printf("请输入电话号码:");
scanf("%s",s[i].tel);
printf("请输入地址:");
scanf("%s",s[i].addr);
while((fp=fopen("friendlist.txt","w"))==NULL)
{
printf("can not open it!\n");
}
fscanf(fp,"%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr);
fclose(fp);
}
void modify(struct list s[]);
{
int i,j;
char name[10];
printf("请输入要修改的记录姓名:");
scanf("%s",name);
int flag=0;
for(i=0;!flag&&i<num;i++)
{
if (strcmp(s[i].name,name)==0)
{
for(j=i;j<num-1;j++)
s[j]=s[j+1];
num=num-1;
flag=1;
}
}
if(!flag)
{
printf("\n %s 不存在!\n",name);
return ;
}
if((fp=fopen("friendlist.txt","w"))==NULL)
{
printf("can not creat new flile<friendlist.txt>.\n");
}
printf("请输入序号(原记录序号):");
scanf("%s",s[i].no);
printf("请输入姓名:");
scanf("%s",s[i].name);
printf("请输入电话号码:");
scanf("%s",s[i].tel);
printf("请输入地址:");
scanf("%s",s[i].addr);
fscanf(fp,"%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr);
fclose(fp);
}
void del(struct list s[]);
{
FILE *fp;
char name[20];
int flag=0;
int i,num,j;
printf("请输入要删的记录姓名:");
scanf("%s",name);
for(i=0;(!flag)&&(i<num);i++)
{
if (strcmp(s[i].name,name)==0)
{
for(j=i;j<num-1;j++)
s[j]=s[j+1];
num=num-1;
flag=1;
}
}
if(!flag)
{
printf("\n %s 不存在!\n",name);
return ;
}
if((fp=fopen("friendlist.txt","w"))==NULL)
{
printf("can not creat new flile<friendlist.txt>.\n");
}
for(i=0;i<num;i++)
{
printf("%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr);
fprintf(fp,"%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr);
}
return ;
}
void search(struct list s[]);
{
int flag=0,i,num;
char name[10],tel[13],addr[20];
printf("请输入要查询的信息:");
scanf("%s",name);
for(i=0;!flag&&i<num;i++)
{
if(strcmp(s[i].name,name)==0)
{ printf("查询到信息:\n");
printf("%s%s%s%s",s[i].no,s[i].name,s[i].tel,s[i].addr);
}
}
return ;
}
} error C2062: type 'void' unexpected出在第一个函数