一、源码简介
用纯C语言利用链表实现的可以记录姓名、手机号管理的一套模拟管理系统。可以对号码和人名进行增删改查操作,是C语言课程设计或锻炼链表的最佳项目!
二、运行截图
菜单页,可以使用键盘上下选择,以动态效果显示
通讯录列表
三、源码解析
这套源码的核心在于使用了链表,而且是双向链表,程序采用双向循环链表结构,这样可以满足目录可以自由上下过渡,而不像单链表那样反方向需要重新遍历,头结点用来表示当前通讯录的人数等信息
程序最大特点是主菜单,用户列表以及每个结点的操作属性菜单均采用上W-A-S-D才选择,回车确
程序核心功能有search()动态搜索函数,creat()创建函数,list()浏览函数构
首先,是节点成员,为双向链表需要两个指针,定义如下:
typedef struct person //结构体属性 { char count[10]; //序号 char name[LENTH]; //姓名 char number[LENTH]; //电话号码 struct person *prior; //前驱指针 struct person *next; //后继指针 }node;
核心操作增删改查链表,和单链表思路差不多,无非多一个指针往回搜索较方便,这里不做过多阐述
四、完整源码
本文固定URL:https://www.dotcpp.com/course/1235
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程