任务描述
编写一个简单的单向链表,实现对一组长度不定的有序整数的管理(查询、插入、修改、删除)。
编程要求
(1)创建一个单向链表,其结点包含值(number)和序号(xuhao)两个整型数据字段(序号从1开始递增,相邻两结点的序号相差1,下同), 输出该链表(按顺序从头部开始输出结点的值,相邻结点值之间用一个空格隔开,最后一个结点的值后不包含空格,下同);
(2)输入整数n,输出序号为n的结点的值;
(3)输入整数x,查找第1个值为x的结点,并输出其序号和值;
(4)插入结点: 输入整数 n和整数x,在原链表中序号为n的结点后插入值为x的新结点,然后输出该链表;
(5)删除结点: 输入整数 n,删除序号为 n 的结点,并输出该链表。
(6)对链表的任何修改操作,都必须保证操作后,链表中从第1个结点开始,序号始终是从1开始递增,相邻结点的序号值相差1.
(7)确保及时释放内存(例如,删除一个结点时,删除的结点的内存要及时释放),避免内存泄漏。
(8)充分地利用函数对程序功能进行合理划分与设计,提高程序的可维护性。
测试说明
平台会对你编写的代码进行测试:
测试输入
21 3 15 27 11 18 0
3
15
3 33
4
预期输出:
21 3 15 27 11 18
15
3 15
21 3 15 33 27 11 18
21 3 15 27 11 18
上面有关输入输出的解释如下 : 输入第一行:输入一串数据,中间用空格隔开,当输入为0时结束输入 。 输出第一行:将链表中的每个元素输出。 输入第二行:输入要查找的序号3 输出第二行:序号3对应的数据15 输入第三行:要查找的元素15 输出第三行:元素15对应的位置3 ,以及 15这个元素 输入第四行:第一个元素为要插入的位置前一个元素位置3,第二个元素为要插入的数据33 输入第五行:要删除的元素位置4 输出第五行

这篇博客介绍如何使用C语言实现一个有序单链表,包括创建、查询、插入、修改和删除结点等功能。编程任务要求创建的链表节点包含值和序号,并保证链表的有序性及内存管理。测试案例展示了不同操作后的链表状态。
最低0.47元/天 解锁文章
5万+

被折叠的 条评论
为什么被折叠?



