C语言实现通讯录功能
前言
我们需要用C语言来简单的实现一个通讯录的功能(来存储1000个人的信息) 每个人的基本信息都包括: 姓名(name),性别(sex),年龄(age),电话(tele),住址(addr) 基本功能都包括: 1.新增联系人(add) 2.删除联系人(del) 3.查找联系人(search) 4.修改联系人(modify) 5.对已有联系人进行排序(sort) 6.打印所有联系人信息(printf)
通讯录(C语言简易版)
目录
一.通讯录菜单
二.通讯录主函数
三.枚举test函数的内部选项
四.定义联系人以及通讯录(结构体)
五.全局变量声明
六.头文件的声明
七.初始化通讯录
八.实现通讯录中的主要功能
九.最后献上完整代码。
十.写在最后
一.通讯录菜单
这个菜单的主要目的是为用户提供一个交互式的选择,以便在通讯录程序中执行不同的操作。通过显示一个包含选项的菜单,用户可以按照自己的需要选择要执行的功能,例如添加联系人、删除联系人、搜索联系人、修改联系人信息、对联系人进行排序或打印所有联系人等。
通过使用数字或字母来标识不同的选项,用户可以输入一个命令,然后在程序中根据所选的选项执行相应的操作。菜单系统可以使程序更加用户友好,并提供一个易于使用的界面,使用户可以方便地管理通讯录。
代码如下:
void menu() { printf("************************************\n"); printf("****** 1.add 2.del *********\n"); printf("******3.search 4.modify ******\n"); printf("******5.sort 6.print *******\n"); printf("******0.exit **************\n"); printf("************************************\n"); }
演示效果
二.通讯录主函数
在完成通讯录菜单功能以后,接下来我们来逐步实现通讯录test函数和主函数的设计
代码如下:
void test() { int input = 0; //创建通讯录 Contact con;//通讯录 //初始化通讯录 InitContact(&con); do { menu(); printf("请选择:>"); scanf("%d", &input); switch (input) { case ADD: AddContact(&con);//添加 break; case DEL: DelContact(&con);//删除 break; case SEARCH: SearchContact(&con);//查找 break; case MODIFY: ModifyContact(&con);//修改 break; case SORT: SortContact(&con);//排序 break; case PRINT: PrintfContact(&con);//打印 break; case EXIT: printf("退出通讯录\n"); break; default: printf("选择错误\n"); break; } } while (input); } int main() { test(); return 0; }
三.枚举test函数的内部选项
在test函数中使用分支循环case虽然说可以将多个条件判断组织起来,使得程序的逻辑更加清晰明了。每个case
语句对应一种情况,使得代码结构更加易于理解和维护。但是同时就没有与最初的数字菜单选项相对应起来,我们这里通过构造一个结构体,在结构体内部进行枚举来达到类似的目的。
代码实现:
enum Option { EXIT,//菜单,0 ADD,//菜单.1 DEL,//2 SEARCH,//3 MODIFY,//4 SORT,//5 PRINT//6 };
四.定义联系人以及通讯录(结构体)
(一)定义联系人内容(结构体)
联系人具体信息包括:1.姓名,2.性别,3.年龄,4.电话,5地址。
代码如下:
typedef struct PeoInfo { char name[NAME_MAX]; char sex[SEX_MAX]; int age; char tele[TELE_MAX]; c