数据结构课程设计——通讯录管理系统
原创
tinkzy
2023-06-27 10:21:29
博主文章分类:课程设计
©著作权
文章标签
通讯录管理系统
i++
#include
用户信息
文章分类
代码人生
©著作权归作者所有:来自51CTO博客作者tinkzy的原创作品,请联系作者获取转载授权,否则将追究法律责任
【问题描述】 建立一个手机通讯录系统。手机通讯录中的联系人的信息既可以存储在手机中,也可以存储在手机卡中,也可以同时存储在两个位置上。存储在手机卡的联系人的信息只包含用户名和电话号码两项信息。存储在手机上的联系人的信息包括姓名、电话号码,QQ号码、籍贯。根据题目要求实现功能。 通讯录的增删改查#include
#include
#include
#include
struct the_contact {
char name[20]; //姓名
char phone[12]; //电话
char mobilephone[12];//手机
char classify[20];//分类
char e_mail[20]; //电子邮件。
char QQ[12];//QQ
} person[100];
int personnum=0;//当前联系人数量
void welcomepage();//欢迎页
void Warning();//异常情况处理
int Choose();//功能选择
int show(int m);//显示联系人
int search();//查找联系人
int searchby(int m);//按不同方式查找联系人
int newcontacter();//新建联系人
int deleteby(int m);//按不同方式删除
int deleteperson();//删除联系人
int renew();//修改联系人
int renewperson(int m);//按不同方式修改联系人
int main() {
int choice=0; //选择键
while(1) {
welcomepage();//欢迎页每选择一次出现一次
//调用选择函数来获取选择数字
choice=Choose();//功能表选择
switch(choice)
{
case 1:
printf("已保存%d个联系人\n",newcontacter());
break;
case 2:
show(-1);
break;
case 3:
deleteperson();
break;
case 4:
renew();
break;
case 5:printf("已退出");
return 0;
default :
Warning();
break;
}
}
return 0;
}
void welcomepage() {
system("cls");//每次打开欢迎页清屏一次
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf(" 欢迎进入个人通讯录管理系统
\n");
printf("
\n");
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf("************************************************************\n");
printf("*
*\n");
printf("* 1.添加联系人
*\n");
printf("* 2.显示和查询联系人
*\n");
printf("* 3.删除联系人
*\n");
printf("* 4.修改联系人
*\n");
printf("* 5.退出
*\n");
printf("*
*\n");
printf("*
*\n");
printf("************************************************************\n");
}
int Choose( ) {
int choice;
printf("请输入选择:\n");
if(!scanf("%d",&choice))
{//输入格式不正确时异常处理
fflush(stdin);
choice=0;
}
return choice;
}
int newcontacter() {
system("cls");
printf("\t\t\t****************
请添加用户信息 ****************\n");
printf("\t\t\t输入姓名:\n");
scanf("%s",person[personnum].name);
printf("\t\t\t输入电话号码:\n");
scanf("%s",person[personnum].phone);
printf("\t\t\t输入手机号码:\n");
scanf("%s",person[personnum].mobilephone);
printf("\t\t\t输入联系人分类:\n");
scanf("%s",person[personnum].classify);
printf("\t\t\t输入e-mail:\n");
scanf("%s",person[personnum].e_mail);
printf("\t\t\t输入QQ:\n");
scanf("%s",person[personnum].QQ);
personnum++;
printf("\t\t\t是否继续添加?(Y/N):\n");
getchar();
char c=getchar();
if(c=='y'||c=='Y')
newcontacter();
else
return
personnum;
}
int show(int m) {
system("cls");//清屏,进入show界面
if(m==-1) {//当前所有联系人信息
for(int
i=0; i=1&&choice |