各位高手们,小弟有一题不会,希望大家给予帮助!在线等!多谢!!!(急急急)

RBG 2003-08-08 10:49:32
说明:
1.编程建立creat()一通讯簿,存放有姓名、电话号码、住址,然后对通信簿进行查找 search()、输出output()、添加append()、修改modify()及删除 delete()。
2.变量定义,函数说明,主函数和建立函数creat()已经给出,可作参考.


#include<stdio.h>
struct person{ char name[8];
char tel[15];
char addr[50];
};

char filename[20];
FILE *fp;

void creat();
void output();
void search();
void append();
void modify();
void delete();

main()
{ int m;

creat();
while(1)
{ printf("\n\n添加,请按1");
printf("\n查找,请按2");
printf("\n修改,请按3");
printf("\n删除,请按4");
printf("\n输出,请按5");
printf("\n退出,请按0\n");
scanf("%d",&m);
if(m>=0&&m<=5)
{ switch(m)
{ case 1: append(); break;
case 2: search(); break;
case 3: modify(); break;
case 4: delete(); break;
case 5: output(); break;
case 0: exit();
}
printf("\n\n操作完毕,请再次选择!");
}
else printf("\n\n选择错误,请再次选择!");
}
}

//创建一条记录
void creat()
{ struct person one;
long s1;

printf("\n请输入通讯簿名:");
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL)
{ printf("\n不能建立通讯簿!");
exit();
}
fprintf(fp,"%-10s%-20s%-50s\n","姓名","电话号码","住址");
printf("\n请输入姓名、电话号码及住址(以0结束)\n");
scanf("%s",one.name);
while(strcmp(one.name,"0"))
{ scanf("%s%s",one.tel,one.addr);
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
scanf("%s",one.name);
}
fclose(fp);
}
//输出一条记录到屏幕
void output()
{ struct person one;

}
//添加一条记录
void append()
{ struct person one;

}
//查找一条记录
void search()
{

}
//修改一条记录
void modify()
{
}
//删除一条记录
void delete()
{
}

最后的modify(),delete()两个函数我不会写,希望大家帮忙!多谢!
...全文
12 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
maxcai 2003-08-08
  • 打赏
  • 举报
回复
modify()
在那里面可以提示输入记录,再调用search找到它,下面的就不要我说吧,再说就会。。。。
delete一样的要用search()
RBG 2003-08-08
  • 打赏
  • 举报
回复
怎么没人恢复!!!
兄弟们!帮助一下吧!多谢了!

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧