刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

请阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。说明和代码涉及含头结点单链表的查找和删除操作。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

 

 

k<i
p=p->next
p=L
p->next
*e=q->data

 

解析:

本题考查的是链表的基本操作,包括查找和删除节点。

对于函数GetListElemPtr,其目的是找到链表中第i个元素的指针。在查找过程中,需要遍历链表,同时计数节点数量。因此,第一个空应该填写条件用于判断是否到达第i个节点,即k小于i。第二个空则是将指针p向后移动到下一个节点,以继续查找。

对于函数DelListElem,其目的是删除链表中的第i个元素,并返回被删除元素的值。首先,需要让指针p指向第i个元素的前驱节点,所以当删除第一个元素时,直接让p指向头节点。然后,让q指向待删除的节点,即p的下一个节点。最后,通过指针q获取被删除节点的数据,并通过参数e带回。在这个过程中,需要释放被删除节点所占用的内存。

因此,各空处的填写如下:

  1. k<i:在while循环中判断是否已经找到第i个节点。
  2. p=p->next:将指针p向后移动到下一个节点。
  3. p=L:让指针p指向头节点,以准备删除第一个元素。
  4. p->next:让q指向p的下一个节点,即待删除的节点。
  5. *e=q->data:通过指针q获取被删除节点的数据,并通过参数e带回。
创作类型:
原创

本文链接:请阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。说明和代码涉及含头结点单链表的

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share