📄 clnkdelx.c
字号:
/*****************************************************/
/* 在循环单链表中删除一个值为x的结点 */
/* 文件名clnkdelx.c,函数名delete_num_clink_list() */
/*****************************************************/
node *delete_num_clink_list(node *head,datatype x)
{
node *pre=NULL,*q;/*q用于查找值为x的结点,pre指向q的前驱结点*/
if(!head)/*表为空,则无法做删除操作*/
{
printf("\n表为空,则无法做删除操作!");
return NULL;
}
q=head;/*从第1个结点开始准备查找*/
while(q->next!=head&&q->info!=x)/*没有找遍整个表并且没有找到*/
{
pre=q;
q=q->next;/*pre为q的前驱,继续查找*/
}/*循环结束后,pre为q的前驱*/
if(q->info!=x)/*没找到*/
{
printf("没有找到值为%d的结点!",x);
}
else /*找到了,下面要删除q*/
{
pre->next=q->next;/*删除q指向的结点*/
free(q);/*释放空间*/
}
return head;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -