#include<stdio.h>
#include<malloc.h>
struct node{
int data;
struct node *next;
};
int main(){
int i;
struct node *head =(struct node *)malloc(sizeof(struct node)),*p,*q,*r,*k,*w;
q = head;
k = head;
for(i = 0; i < 10;i++){
p = (struct node *)malloc(sizeof(struct node));
p->data = i;
q->next = p;
q = p;
}//链表尾插法
q->next = NULL;
//链表的插入
k = k->next;
int n,t;scanf("%d %d",&n,&t);
while(k != NULL){
if(k->data == n){
r = (struct node *)malloc(sizeof(struct node));w = (struct node *)malloc(sizeof(struct node));
r->data = t;
w = k->next;
k->next = r;
r->next = w;
break;
}
k = k->next;
}
//链表的插入
//链表的删除
struct node *l,*m;
l = head;
l = l->next;
while(l != NULL){
if(l->next->data == n){
m = l->next;
l->next =m->next;
free(m);
break;
}
l = l->next;
}
//链表的删除
//链表的建立
head = head->next;
while(head != NULL){
printf("%d ",head->data);
head = head->next;
}
//链表的建立
return 0;
};
C语言链表尾插法,插入、删除等操作
最新推荐文章于 2024-04-21 14:29:38 发布