主要功能
- 添加联系人,要求不超过100人,超过100则显示添加失败。
- 删除联系人,按姓名删除(要保证不能有重名)
- 修改联系人信息,先根据姓名查找到联系人
- 查找联系人,根据电话号码查找联系人
- 显示所有联系人
程序运行
1、菜单界面
实现程序后进入的电话簿菜单界面,输入指令1、2、3、4、5、q,分别实现电话簿添加、删除、修改、查找、显示、退出功能。
2、添加联系人
输入指令1后添加联系人,添加格式:姓名 性别 电话
3、删除联系人
这里是通过姓名删除联系人,输入指令后输入姓名即可删除成功
4、修改联系人信息
输入指令后即可修改联系人信息,通过输入姓名先找到联系人,然后重新输入此联系人的相关信息
5、查找联系人
输入指令后,通过手机号查找到联系人,程序中相同的手机号也可
6、显示所有联系人
这里输入指令后,显示所有的联系人信息。
程序代码
电话簿的头文件
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <stdbool.h>
#include <getch.h>
定义联系人数据
// 定义联系人数据
char name[100][20];
char sex[100];
char tel[100][12];
添加联系人
void add_contacts(void)
{
for(int i=0; i<100; i++)
{
if(0 == sex[i])
{
printf("请输入姓名、性别、电话:");
scanf("%s %c %s",name[i],&sex[i],tel[i]);
printf("添加联系人成功\n");
return;
}
}
printf("电话簿已满\n");
}
删除联系人
void del_contacts(void)
{
char str[20] = {};
printf("请输入要删除的联系人姓名:");
scanf("%s",str);
for(int i=0; i<100; i++)
{
if(0 == strcmp(str,name[i]))
{
sex[i] = 0;
printf("删除联系人成功\n");
return;
}
}
printf("联系人不存在\n");
}
修改联系人信息
void change_contacts(void)
{
char str[20] = {};
printf("请输入要修改的联系人姓名:");
scanf("%s",str);
for(int i=0; i<100; i++)
{
if(0 == strcmp(str,name[i]))
{
printf("%s\t%c\t%s\n",name[i],sex[i],tel[i]);
printf("请重新输入联系人姓名、性别、电话:");
scanf("%s %c %s",name[i],&sex[i],tel[i]);
return;
}
}
printf("没有找到要修改的联系人");
}
查找联系人
void find_contacts(void)
{
char str[20] = {};
printf("请输入要查找的手机号:");
scanf("%s",str);
getchar();
for(int i=0; i<100; i++)
{
if(strstr(tel[i],str))
{
printf("%s\t%c\t%s\n",name[i],sex[i],tel[i]);
}
}
printf("请输入任意键继续...\n");
getch();
}
显示所有联系人
void list_contacts(void)
{
printf("姓名\t性别\t电话\n");
for(int i=0; i<100; i++)
{
if(sex[i])
{
printf("%s\t%c\t%s\n",name[i],sex[i],tel[i]);
}
}
printf("请输入任意键继续...\n");
getch();
}
菜单界面
char menu(void)
{
system("clear");
printf(" 欢迎使用C语言电话簿 \n");
printf("_________________________________\n");
printf("| |\n");
printf("| 1、添加联系人 |\n");
printf("| 2、删除联系 |\n");
printf("| 3、修改联系人信息 |\n");
printf("| 4、查找联系人 |\n");
printf("| 5、显示所有联系人 |\n");
printf("| q、退出电话簿 |\n");
printf("| |\n");
printf("——————————————————————————————|\n");
printf("请输入指令:");
char cmd = getch();
printf("%c\n",cmd);
return cmd;
}
main函数
int main()
{
while(true)
{
switch(menu())
{
case '1': add_contacts(); break;
case '2': del_contacts(); break;
case '3': change_contacts(); break;
case '4': find_contacts(); break;
case '5': list_contacts(); break;
case 'q': return 0;
}
}
}