当前位置:首页 > 题目十四 编程完成简单通信录程序
题目十四 编程完成简单通信录程序 【说明及要求】
(1) 输入姓名、单位、电话号码; (2) 增加记录; (3) 删除记录;
(4) 按姓名查找后显示; (5) 保存修改后的文件; (6) 显示修改后的文件。 #include
char filename[20]; FILE *fp; void creat(); void output(); void search(); void append(); void modify(); void del(); void main() { int m;char k; printf(\请输入你要打开的通讯录文件名:\ gets(filename); if((fp=fopen(filename,\ { printf(\当前没有此通讯录文件,现在是否执行创建(Y/N)?:\ scanf(\ if(k!='Y'&&k!='N'&&k!='y'&&k!='n') {printf(\输入有误,请再次输入一个值:\ else if(k=='Y'||k=='y') {creat();} else if(k=='N'||k=='n') {printf(\由于你选择了退出,现在程序即将关闭!\\n\
} else { printf(\你要打开的通讯录文件%s已存在,现在可直接对其操作:\\n\ printf(\通讯录文件中现已有的通讯信息:\\n\ printf(\请选择根据提示选择1~5对通讯录文件进行操作。\\n\ } while (1)
{printf(\添加,请按1\ printf(\查找,请按2\ printf(\修改,请按3\ printf(\删除,请按4\ printf(\输出,请按5\ printf(\退出,请按0\\n\ scanf(\ if(m>=0&&m<=5) {switch(m)
{case 1: append();break; case 2: search();break; case 3: modify();break; case 4: del();break; case 5:output();break; case 0:exit(0); }
printf(\操作完毕,请再次选择!\ }
else printf(\操作错误,请再次选择!:\} }
void creat()
{struct person one;
printf(\请输入通讯簿文件名:\scanf(\
if ((fp=fopen(filename,\{printf(\不能建立通讯薄!\exit(0); }
fprintf(fp,\姓名\电话号码\住址\电子邮箱\printf(\请输入姓名:\\n\ scanf(\
while (strcmp(one.name,\ { printf(\请输入电话号码:\\n\ scanf(\ printf(\请输入住址:\\n\ scanf(\ printf(\请输入电子邮箱:\\n\ scanf(\ fprintf(fp,\e.email); printf(\请再输入另一个人的姓名,若想要结束,请输入0\\n\ scanf(\ } fclose(fp); }
void output()
{struct person one; if((fp=fopen(filename,\ {printf(\不能打开通讯薄!\ exit(0); }
while (!feof(fp))
{fscanf(fp,\
printf(\}
fclose(fp); }
void append()
{struct person one;
if ((fp=fopen(filename,\{printf(\不能打开通讯薄!\ exit(0); } printf(\请输入添加的姓名\\n\ scanf(\ printf(\请输入电话号码:\\n\ scanf(\ printf(\请输入住址:\\n\ scanf(\ printf(\请输入电子邮箱:\\n\
scanf(\
printf(\fprintf(fp,\fclose(fp); }
void search() {int flag=0;
char namekey[8]; struct person one;
printf(\请输入姓名:\ scanf(\
if((fp=fopen(filename,\ {printf(\不能打开通讯薄!\ exit(0); }
while(!feof(fp))
{fscanf(fp,\ if (!strcmp(namekey,one.name)) {printf(\已查到,记录为:\
printf(\ flag=1; } }
if(!flag) printf(\对不起,通讯薄中没有此人的记录。\ fclose(fp); }
void modify() {int flag=0; long offset;
char namekey[8]; struct person one;
printf(\请输入姓名:\scanf(\
if((fp=fopen(filename,\{printf(\不能打开通讯薄!\
共分享92篇相关文档