#include<stdio.h>
#include<math.h>
#define OK 1
#define ERROR -1
typedef int Status ;
typedef int ElemType ;
typedef struct Lnode{
ElemType data; /*数据域,保存结点的值 */
struct Lnode *next; /*指针域*/
} LNode; /*结点的类型 */
void Delete_LinkList(LNode *L, int i)
/* 删除以L为头结点的单链表中的第i个结点 */
{
int j=1; LNode *p,*q;
// p为q前面的节点
p=L; q=L->next;
while ( p->next!=NULL&& j<i) {
p=q; q=q->next; j++;
}
if (j!=i)
printf("i太大或i为0!!\n ");
else{
// 删除q节点,释放资源;
p->next=q->next; free(q);
}
}
C语言链表按序号删除
最新推荐文章于 2022-07-21 17:50:10 发布