简单易上手的通讯录实现,跟着敲,你也能拥有属于你的通讯录!(代码+笔记已经上传至gitee)

本文档详细介绍了如何利用C语言实现一个简单的通讯录管理系统,包括结构体定义、功能实现如添加、删除、查找、修改和排序等,并提供了完整的代码实现。通过枚举类型和结构体数组,实现了对100个联系人信息的管理,每个联系人信息包括姓名、性别、年龄、电话和公司地址。此外,还讲解了文件构成的重要性以及如何初始化和操作通讯录。
摘要由CSDN通过智能技术生成

通讯录

老规矩笔记和代码欢迎自取~
链接:

  1. 通讯录笔记
  2. 通讯录工程文件+源代码


一、通讯录的组成

利用最近所学的知识,试着实现一个通讯录

手机里面的通讯录信息

在这里插入图片描述

最后我决定给通讯录增加以下信息

  • 存放100个联系人的信息

    信息包括:姓名 + 性别 + 年龄 + 电话 + 公司地址

    (PS:节目效果,真不是跟踪狂)

  • 增加/删除/修改/查找/打印/排序联系人

    (功能是不是很强大?看完这篇你也可以实现!)


二、通讯录文件构成

为什么每一篇小项目都强调一遍文件构成?

  • 文件的构成是每一个项目的思路
  • 没有思路,直接上手容易手忙脚乱
  • 分析好每个文件所包含的内容,有利于我们代码的书写

1. test.c

按照之前的设计小游戏一样,test.c文件是必要的,用来测试各种功能使用是否可以正常使用或者运行

还包括整个通讯录的框架,比如提供给使用者得选择菜单

2. correspondence.c

用来设计实现通讯录功能的文件,文件包含的基本上都是函数

函数包括实现增加/删除/修改/查找/打印/排序联系人

3. correspondence.h

包含 test.c 和 correspondence.c 中需要用到的库函数的头文件,以及全过程需要使用的变量


三、实现的代码步骤分析

1. 打印菜单

使用者上手即操作,我们需要提供给他们操作的菜单,也是我们功能的目录

菜单明细上面也分析了,主要包含:

void menu()//菜单
{
   
	printf("==============通讯录=============\n");
	printf("         1.添加联系人(add)       \n");
	printf("         2.查找联系人(seek)      \n");
	printf("         3.删除联系人(delete)    \n");
	printf("         4.修改联系人(modify)    \n");
	printf("         5.排序联系人(sort)      \n");
	printf("         6.打印联系人(print)     \n");
	printf("         0.退出通讯录(EXIT)      \n");

}

利用最近所学的枚举类型,我们试着这次的循环内的switch语句,判断不选择数字,而选择判断功能的内容

所以我们定义一个枚举类型,用单词代表各个功能

此过程在 test.c 文件中

enum menu
{
   
	EXIT,//0
	add,//1
	seek,//2
	delete,//3
	modify,//4
	sort,//5
	print//6
};

把exit放前面正好代表0,每个枚举常量代表的数字都是对应的功能


到此为止,整个循环的大概模型是这样代码如下

此过程在 test.c 文件中

int main()
{
   
	int input = 0;
	do
	{
   
		menu();//打印菜单提供使用者选择
		printf("请选择您要使用的功能(输入选项括号内内容):");
		scanf("%d", &input);//使用者输入选择

		switch (input)
		{
   
		case add:break;
		case seek:break;
		case delete:break;
		case modify:break;
		case sort:break;
		case print:break;
		case exit:
			printf("您选择了退出通讯录\n");
			break;
		default:
			printf("输入错误信息,请重新输入:\n");
			break;
		}
	} while (input != 0);
	return 0;
}

运行的结果

分别测试了 正确信息 错误信息 退出功能

在这里插入图片描述


2. 联系人信息初始化

刚拿到新手机的大家,通讯录里面

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凛音Rinne

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值