C语言大作业电话号码管理系统设计.docx
- 文档编号:27592199
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:19
- 大小:17.28KB
C语言大作业电话号码管理系统设计.docx
《C语言大作业电话号码管理系统设计.docx》由会员分享,可在线阅读,更多相关《C语言大作业电话号码管理系统设计.docx(19页珍藏版)》请在冰豆网上搜索。
C语言大作业电话号码管理系统设计
#include
#include
#include
#include
#defineN100
voidinput();//添加新用户
voidamend();//修改用户信息
voiddelete_client();//删除用户信息
voidsearch_client();//用户信息查询
voidcollect_telephone();//所有用户信息
voidsave_client(structtelephonemessage);//保存
voidsearch_name();//按用户名查询
voidsearch_telephone();//按电话号码查询
voidgoodbye();//退出提示
structtelephone
{
charclient_name[20];
charclient_address[30];
charclient_telephone[15];
};
voidmain()
{
charchoice[10]="";
intlen=0;
while(choice[0]!
='7')
{
system("cls");
printf("◢◤〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓◥◣");
printf("\n◢◤〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓◥◣");
printf("\n█===┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓┏┯┓===█");
printf("\n█===┠欢┨┠迎┨┠使┨┠用┨┠电┨┠话┨┠管┨┠理┨┠系┨┠统┨===█");
printf("\n█===┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛┗┷┛===█");
printf("\n◥◣〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓◢◤");
printf("\n◥◣〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓◢◤\n");
printf("★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★≈★");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
printf("┃|||┃\n");
printf("┃1、|用户信息查询|2、|所有用户信息┃\n");
printf("┃|||┃\n");
printf("┃=========|════════════|========|════════════┃\n");
printf("┃|||┃\n");
printf("┃3、|删除用户信息|4、|添加用户┃\n");
printf("┃|||┃\n");
printf("┃=========|════════════|========|════════════┃\n");
printf("┃|||┃\n");
printf("┃5、|修改用户信息|6、|退出系统┃\n");
printf("┃|||┃\n");
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
printf("\n请选择(1-6):
");
scanf("%s",choice);
len=strlen(choice);
if(len>1)
{
printf("\n请输入1-6之间的整数\n");
printf("\n按回车键返回主菜单\n");
getchar();
getchar();
continue;
}
switch(choice[0])
{
case'1':
search_client();break;
case'2':
collect_telephone();break;
case'3':
delete_client();break;
case'4':
input();break;
case'5':
amend();break;
case'6':
goodbye();break;
default:
break;
}
}
}
//添加新用户
voidinput()
{
structtelephonemessage;
charreply='y';
charsave='y';
while(reply=='y')
{
system("cls");
printf("\n用户姓名:
");
scanf("%s",message.client_name);
printf("\n家庭住址:
");
scanf("%s",message.client_address);
printf("\n电话号码:
");
scanf("%s",message.client_telephone);
printf("\n要保存吗?
(y/n):
");
scanf("%c",&save);
if(save=='y')
{
save_client(message);
}
printf("\n是否继续?
(y/n):
");
scanf("%c",&reply);
}
printf("\n按回车键返回主菜单\n");
getchar();
getchar();
}
//保存
voidsave_client(structtelephonemessage)
{
FILE*fp;
fp=fopen("message.dat","a+");
if(fp!
=NULL)
{
fwrite(&message,sizeof(structtelephone),1,fp);
}
else
{
printf("\n打开文件时出现错误,按回车键返回\n");
getchar();
return;
}
fclose(fp);
}
//修改用户信息
voidamend()
{
structtelephonemessage;
FILE*fp;
charamend_name[20];
charreply='y';
charfound='y';
charsave='y';
intsize=sizeof(structtelephone);
while(reply=='y')
{
found='n';
fp=fopen("message.dat","r+w");
if(fp!
=NULL)
{
system("cls");
printf("\n请输入你要修改的姓名:
");
scanf("%s",amend_name);
while((fread(&message,size,1,fp))==1)
{
if((strcmp(amend_name,message.client_name))==0)
{
found='y';
break;
}
}
if(found=='y')
{
printf("\n修改用户信息\n");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃用户姓名┃%-16s┃",message.client_name);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃家庭地址┃%-16s┃",message.client_address);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃电话号码┃%-16s┃",message.client_telephone);
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
printf("\n修改用户信息:
\n");
printf("\n用户姓名:
");
scanf("%s",message.client_name);
printf("\n家庭住址:
");
scanf("%s",message.client_address);
printf("\n电话号码:
");
scanf("%s",message.client_telephone);
printf("\n是否保存?
(y/n):
");
scanf("%c",&save);
if(save=='y')
{
fseek(fp,-size,1);
fwrite(&message,sizeof(structtelephone),1,fp);
}
}
else
{
printf("\n无此信息!
\n");
}
}
else
{
printf("\n打开文件时出现错误,按回车键返回\n");
getchar();
return;
}
fclose(fp);
printf("\n是否继续?
(y/n):
");
scanf("%c",&reply);
}
printf("\n按回车键返回主菜单\n");
getchar();
getchar();
}
//删除用户信息
voiddelete_client()
{
structtelephonemessage[N];
structtelephonetemp_str;
structtelephonedelete_str;
inti=0,j=0;
charreply='y';
charfound='y';
charconfirm='y';
chardelete_name[20];
FILE*fp;
while(reply=='y')
{
system("cls");
fp=fopen("message.dat","r");
if(fp!
=NULL)
{
i=0;
found='n';
printf("\n请输入你要删除的姓名:
");
scanf("%s",delete_name);
while((fread(&temp_str,sizeof(structtelephone),1,fp))==1)
{
if((strcmp(delete_name,temp_str.client_name))==0)
{
found='y';
delete_str=temp_str;
}
else
{
message[i]=temp_str;
i++;
}
}
}
else
{
printf("\n无此信息,按回车键返回\n");
getchar();
return;
}
fclose(fp);
if(found=='y')
{
printf("\n用户信息");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃用户姓名┃%-16s┃",delete_str.client_name);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃家庭地址┃%-16s┃",delete_str.client_address);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃电话号码┃%-16s┃",delete_str.client_telephone);
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
}
else
{
printf("\n无此信息,按回车键返回\n");
getchar();
break;
}
printf("\n确定要删除?
(y/n):
");
scanf("%c",&confirm);
if(confirm=='y')
{
fp=fopen("message.dat","w");
if(fp!
=NULL)
{
for(j=0;j
{
fwrite(&message[j],sizeof(structtelephone),1,fp);
}
printf("\n记录已删除\n");
}
else
{
printf("\n打开文件时出现错误,按回车键返回\n");
getchar();
return;
}
fclose(fp);
}
printf("\n是否继续?
(y/n):
");
scanf("%c",&reply);
}
getchar();
}
//用户信息查询
voidsearch_client()
{
intchoice=1;
while(choice!
=3)
{
system("cls");
printf("\n电话查询菜单\n");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃1┃按用户姓名查询┃");
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃2┃按电话号码查询┃");
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃3┃返回主菜单┃");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
printf("\n请选择(1-3):
");
scanf("%d%*c",&choice);
if(choice>3)
{
printf("\n请输入1-3之间的整数(1-3)\n");
printf("\n按回车键返回");
getchar();
continue;
}
if(choice==1)
{
search_name();
}
elseif(choice==2)
{
search_telephone();
}
}
}
//按用户名查询
voidsearch_name()
{
structtelephonemessage;
FILE*fp;
charamend_name[20];
charreply='y';
charfound='y';
while(reply=='y')
{
found='n';
fp=fopen("message.dat","r+w");
if(fp!
=NULL)
{
system("cls");
printf("\n请输入你要查的姓名:
");
scanf("%s",amend_name);
while((fread(&message,sizeof(structtelephone),1,fp))==1)
{
if((strcmp(amend_name,message.client_name))==0)
{
found='y';
break;
}
}
if(found=='y')
{
printf("\n用户信息\n");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃用户姓名┃%-16s┃",message.client_name);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃家庭地址┃%-16s┃",message.client_address);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃电话号码┃%-16s┃",message.client_telephone);
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
}
else
{
printf("\n无此信息\n");
}
}
else
{
printf("\n打开文件时出现错误,按回车键返回\n");
getchar();
return;
}
fclose(fp);
printf("\n是否继续?
(y/n):
");
scanf("%c",&reply);
}
printf("\n按回车键返回主菜单\n");
getchar();
getchar();
}
//按电话号码查询
voidsearch_telephone()
{
structtelephonemessage;
FILE*fp;
chartelephone[20];
charreply='y';
charfound='y';
while(reply=='y')
{
found='n';
fp=fopen("message.dat","r+w");
if(fp!
=NULL)
{
system("cls");
printf("\n请输入你要查的电话号码:
");
scanf("%s",telephone);
while((fread(&message,sizeof(structtelephone),1,fp))==1)
{
if((strcmp(telephone,message.client_telephone))==0)
{
found='y';
break;
}
}
if(found=='y')
{
printf("\n用户信息\n");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃用户姓名┃%-16s┃",message.client_name);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃家庭地址┃%-16s┃",message.client_address);
printf("\n┃━━━━━━━━┃━━━━━━━━━━━━┃");
printf("\n┃电话号码┃%-16s┃",message.client_telephone);
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
}
else
{
printf("\n无此电话号码信息\n");
}
}
else
{
printf("\n打开文件时出现错误,按回车键返回\n");
getchar();
return;
}
fclose(fp);
printf("\n是否继续?
(y/n):
");
scanf("%c",&reply);
}
printf("\n按回车键返回主菜单\n");
getchar();
getchar();
}
//显示所有用户信息函数
voidcollect_telephone()
{
structtelephonemessage;
FILE*fp;
fp=fopen("message.dat","r");
if(fp!
=NULL)
{
system("cls");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
printf("\n┃用户姓名┃家庭地址┃电话号码┃");
printf("\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓\n");
while((fread(&message,sizeof(structtelephone),1,fp))==1)
{
printf("┃%-16s┃%-16s┃%-16s┃",message.client_name,message.client_address,message.client_telephone);
printf("\n┃━━━━━━━━┃━━━━━━━━┃━━━━━━━━┃\n");
}
}
else
{
printf("\n打开文件时出现错误,按
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 作业 电话号码 管理 系统 设计