#include<stdio.h>
#include<math.h>
#include<string.h>
#include<windows.h>
int count=0;//定义通讯录实时人数
struct massage//定义结构体包括通讯录name,number..
{
int id;
char name[20];
int number;
int QQ;
int vx;
}mas;
massage news[500];
//定义结构体数组 记录大概有500人容量的通讯录
void output(massage news[],int n)//打印所有人的信息
{
for(int i=1;i<=n;i++)
{ if(news[i].id!=0)
{
printf("名字:%s 电话号码:%d QQ号码:%d 微信号码:%d\n",news[i].name,news[i].number,news[i].QQ,news[i].vx);}
}
}
void outputname(massage news[],int n)
{
for(int i=1;i<=n;i++)
{
printf("名字:%s \n",news[i].name);
}
}
void add(massage news[])//添加
{
printf("请添加一个联系人\n");
count=count+1;
printf("请输入您要添加联系人的名字\n");
int id2;
id2=count;
news[id2].id=id2;
scanf("%s",news[id2].name);//字符串不需要加&符号
printf("请输入您要添加联系人的手机号码\n");
scanf("%d",&news[id2].number);
printf("请输入您要添加联系人的QQ号码\n");
scanf("%d",&news[id2].QQ);
printf("请输入您要添加联系人的微信号码\n");
scanf("%d",&news[id2].vx);
printf("恭喜您,成功添加了一位新的联系人!\n");
}
void del(massage news[])//删除
{int flag3=0;
printf("请输入您想要删除的联系人的名字!\n");
char text[20];
scanf("%s",text);
for(int i=1;i<=count;i++)
{
if(strcmp(news[i].name,text)==0)
{ flag3++;
printf("查找成功!\n");
printf("此联系人的信息为:\n");
printf("名称:%s 电话号码:%d QQ号码:%d 微信号码:%d\n",news[i].name,news[i].number,news[i].QQ,news[i].vx);
printf("正在删除%s的所有信息\n",news[i].name);
printf("是否确认删除该联系人?\n");
printf("确认请按1 退出请按2\n");
int r;
scanf("%d",&r);
switch(r)
{
case 1:
news[i].id=0;
printf("删除成功!\n");
count--;
break;
case 2:
break;
}
break;
}
}
if(flag3==0)
{
printf("不好意思,没有找到这个人!\n");
}
}
void find(massage news[])//通过查找名字
{
int flag=0;
printf("请输入您要查找联系人的名字\n") ;
char text[20];
scanf("%s",&text);
for(int i=1;i<=count;i++)
{
if(strcmp(news[i].name,text)==0)
{ if(news[i].id==0)
{
break;
}
printf("查找成功!\n");
printf("此联系人的信息为:\n");
printf("名称:%s 电话号码:%d QQ号码:%d 微信号码:%d",news[i].name,news[i].number,news[i].QQ,news[i].vx);
flag++;
break;
}
}
if(flag==0)
{
printf("不好意思,没有找到这个人!\n");
}
}
void change(massage news[])//修改
{
printf("请输入您要修改的联系人的名字\n") ;
char text[20];
scanf("%s",&text);
int flag2=0;
for(int i=1;i<=count;i++)
{
if(strcmp(news[i].name,text)==0)
{
flag2=0;
printf("查找成功!\n");
flag2++;
printf("此联系人的信息为:\n");
printf("名称:%s 电话号码:%d QQ号码:%d 微信号码:%d",news[i].name,news[i].number,news[i].QQ,news[i].vx);
printf("请问您要修改的信息\n1:名字\n2:电话号码\n3:QQ号码\n4:微信号码\n");
int r;
scanf("%d",&r);
switch(r)
{
case 1:
printf("请输入该联系人修改后的信息\n");
printf("请输入该联系人的名字\n") ;
scanf("%s",news[i].name);
printf("恭喜您,修改成功!\n");
break;
case 2:
printf("请输入该联系人修改后的信息\n");
printf("请输入该联系人的电话号码\n") ;
scanf("%d",&news[i].number);
printf("恭喜您,修改成功!\n");
break;
case 3:
printf("请输入该联系人修改后的信息\n");
printf("请输入该联系人的QQ号码\n") ;
scanf("%d",&news[i].QQ);
printf("恭喜您,修改成功!\n");
break;
case 4:
printf("请输入该联系人修改后的信息\n");
printf("请输入该联系人微信号码\n") ;
scanf("%d",&news[i].vx);
printf("恭喜您,修改成功!\n");
break;
}
break;
}
}
if(flag2==0)
{
printf("不好意思,没有找到这个人!\n");
}
}
int main()
{system("color 5E");
printf("\t\t\t\t 欢迎来到通讯录!\n");
printf("\n");
while(1)
{
//system("cls");
printf("\t\t\t 请选择您所需要的服务内容\n");
printf("\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t1:查询联系人 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t2:修改联系人 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t3:添加联系人 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t4:删除联系人 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t5:显示通讯薄 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t6:显示通讯薄总人数 |\n");
printf("\t\t\t----------------------------------------------\n");
printf("\t\t\t|\t\t7:退出系统 |\n");
printf("\t\t\t----------------------------------------------\n");
// printf("8:退出系统 \n");
int x;
scanf("%d",&x);
switch(x)
{
case 1://查找
system("cls");
find(news);
system("pause");
break;
case 2:
system("cls");
change(news);
system("pause");
break;
case 3:
system("cls");
add(news);
system("pause");
break;
case 4:
system("cls");
del(news);
system("pause");
// break;
case 5:
system("cls");
output(news,count);
system("pause");
break;
case 6:
system("cls");
if(count==0)
{
printf("不好意思,通讯薄还没有新增的人数!\n");
}
else{
printf("目前的通讯薄的总人数为:%d\n",count);
}
system("pause");
break;
}
if(x==7) {printf("您已成功退出系统!"); break;}
}
return 0;
}
/*
通讯录管理系统
一、关于功能
1.联系人的构建
(1)联系人内容包括:
联系人姓名,电话号码,也可以加上微信号等
2.查询:
整体输出
3.修改:
包括多种情况
需要选择修改什么信息
4.删除:
5.增添:
包括两种情况
(1)增添某已存联系人部分信息
(2)增添联系人
*/
肝了一周的通讯录管理系统
最新推荐文章于 2024-10-12 11:32:27 发布