#include <stdio.h>
#include <stdlib.h>
typedef struct Person{
char *id;
char *name;
struct Person *next;
}Node;
int main(void)
{
Node *p1,*p2,*p3,*head,*p;
p1 = (Node*)malloc(sizeof(Node));
p2 = (Node*)malloc(sizeof(Node));
p3 = (Node*)malloc(sizeof(Node));
p1->id="191100153";p1->name="king";
p2->id="191100152";p2->name="mei";
p3->id="191100151";p3->name="gege";
head=p1;
p1->next=p2;
p2->next=p3;
p3->next=NULL;
p = head;
while(p!=NULL){
printf("%s,%s\n",p->id,p->name);
p=p->next;
}
return 0;
}
执行结果如下:
增加节点
技巧:使用p指针指向要插入位置的前一个节点处,x->next=p->next,让x的下一个结点指向p指针的下一个位置,最后让p->next=x;
Node *x=(Node*)malloc(sizeof(Node));
x->id="5201314";x->name="kiki";
p = p2;
x->next=p->next;
p->next=x;
#include <stdio.h>
#include <stdlib.h>
typedef struct Person{
char *id;
char *name;
struct Person *next;
}Node;
int main(void)
{
Node *p1,*p2,*p3,*head,*p;
p1 = (Node*)malloc(sizeof(Node));
p2 = (Node*)malloc(sizeof(Node));
p3 = (Node*)malloc(sizeof(Node));
p1->id="191100153";p1->name="king";
p2->id="191100152";p2->name="mei";
p3->id="191100151";p3->name="gege";
head=p1;
p1->next=p2;
p2->next=p3;
p3=NULL;
//新增节点
Node *x=(Node*)malloc(sizeof(Node));
x->id="5201314";x->name="kiki";
p = p2;
x->next=p->next;
p->next=x;
p = head;
while(p!=NULL){
printf("%s,%s\n",p->id,p->name);
p=p->next;
}
return 0;
}
执行结果如下:
删除结点
//删除节点
Node *q;
p = p2;
q = p->next;
p->next = q->next;
free(q);
#include <stdio.h>
#include <stdlib.h>
typedef struct Person{
char *id;
char *name;
struct Person *next;
}Node;
int main(void)
{
Node *p1,*p2,*p3,*head,*p;
p1 = (Node*)malloc(sizeof(Node));
p2 = (Node*)malloc(sizeof(Node));
p3 = (Node*)malloc(sizeof(Node));
p1->id="191100153";p1->name="king";
p2->id="191100152";p2->name="mei";
p3->id="191100151";p3->name="gege";
head=p1;
p1->next=p2;
p2->next=p3;
p3=NULL;
//新增节点
Node *x=(Node*)malloc(sizeof(Node));
x->id="5201314";x->name="kiki";
p = p2;
x->next=p->next;
p->next=x;
//删除节点
Node *q;
p = p2;
q = p->next;
p->next = q->next;
free(q);
p = head;
while(p!=NULL){
printf("%s,%s\n",p->id,p->name);
p=p->next;
}
return 0;
}
执行结果如下:
kiki给删除了