问题及题目要求:
实例代码:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct Link{
int data;
struct Link *next;
};
struct Link *createLink(int m){
struct Link *head,*q,*p;
head = (struct Link *)malloc(sizeof(struct Link));
p = head;
while(m--){
q = (struct Link *)malloc(sizeof(struct Link));
scanf("%d",&q->data);
p->next = q;
p = q;
}
p->next = NULL;
return head;
};
int main(){
struct Link *heada,*headb,*p,*q;
int m , n;
int i , len , j;
scanf("%d",&m);
heada = createLink(m);
scanf("%d",&n);
headb = createLink(n);
scanf("%d%d%d",&i,&len,&j);
p = q = heada;
while(--i){
p = p->next;
q = q->next;
}
while(len--){
q = q->next;
}
p->next = q->next;
while(q->next!=NULL)
q = q->next;
p = headb;
while(--j)
{
p = p->next;
}
q->next = p->next;
p->next = heada->next;
p = headb->next;
while(p != NULL){
printf("%d ",p->data);
p = p->next;
}
return 0;
}
运行演示:
总结:
这应该是我接触的第一种数据结构,链表这种数据结构使程序对用户数据的储存更加的方便,快捷,灵活。对链表的创建以及其他一些对链表的操作应该熟练的掌握。