一个简单的通讯录
通讯录应该具备简单的一些功能
1 增添联系人
2 删除联系人
3 查找联系人
4 修改联系人
5 按名字给联系人排序
6 查看通讯录
除此之外,应该在实现上还应该具备一些其他的功能函数
比如 初始化通讯录
这些都是功能函数,而整个函数入口应该为main
为了更加清晰,更加鲜明的体现功能区域,将所有的宏定义,和一些声明我放在一个头文件中。
要创建一个通讯录,我们要抽象化一个人,将这个人的一些信息放在一个结构体中
而一个通讯录中不可能只有一个人,所以需要一个结构体数组,来装你要存入的数据
并创建一个整形变量sz来记录当前通讯录当前存入了多少个人
而在整个main()中只有一个函数test(),我们将整个函数功能的选择放在这里,虽然switch语句并不好,但在这里,依然用switch进行选择
本来选择用switch时,应该用一个整形来进行选择,但在这里,我用了一个枚举类型,来更直观的进行选择
枚举类型,从上至下,对应的数字应该为 0,1,2,3,4,5,6
接下来就是每个功能函数的实现
初始化通讯录
首先传结构体指针过来,需要判断有效性,用assert断言判断,初始化通讯录
人数为0,并给结构体数组中每个元素赋值0,此处用memset内存建立函数实现。
增添联系人
查看通讯录
将已经录入的信息打印一遍
内部查找函数
因为进行下来的操作时都有一个操作就是查找所以,先写一个内部的查找函数
删除联系人
此处就要用到上述写的内部查找函数
查找联系人
找到之后打印一遍,给用户一个友好的提示
修改联系人
按名字给联系人排序
此处用的是冒泡排序
到此,所有功能都已实现,但此通讯录是一个静态通讯录,不能根据具体的实际情况进行扩容。