每日程序C语言45-连接两个链表
生活随笔
收集整理的這篇文章主要介紹了
每日程序C语言45-连接两个链表
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目:
連接兩個鏈表
程序分析
- 可以將后面的鏈表直接接在第一個鏈表后面,但是注意,刪除第二個鏈表的頭結(jié)點(diǎn)再進(jìn)行刪除
主要代碼
main.c
//創(chuàng)建結(jié)點(diǎn)類型 typedef struct Node{int data;struct Node *next; }Node,*LinkList; //打印鏈表 void print(LinkList L){L=L->next;while (L){printf("%3d",L->data);L=L->next;}printf("\n"); } LinkList create(int n){LinkList head=(Node*)malloc(sizeof(Node));Node *p=head,*q;int i;for (i = 0; i <n; i++){q=(Node*)malloc(sizeof(Node));scanf("%d",&q->data);p->next=q;p=q;}p->next=NULL;return head; } //合并鏈表 LinkList combine(LinkList L1,LinkList L2){LinkList head=L1;while (head->next)head=head->next;head->next=L2->next;return L1; } int main(void){printf("請輸入鏈表的值5個結(jié)點(diǎn):\n");LinkList L1=create(5);printf("請輸入鏈表的值4個結(jié)點(diǎn):\n");LinkList L2=create(4);printf("目前的第一個鏈表是:\n");print(L1);printf("目前的第一個鏈表是:\n");print(L2);printf("合并后的鏈表是:\n");print(combine(L1,L2));system("pause");return 0; }運(yùn)行結(jié)果
今日鞏固
總結(jié)
以上是生活随笔為你收集整理的每日程序C语言45-连接两个链表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 每日程序C语言44-反向输出一个链表(递
- 下一篇: 每日程序C语言46-函数之间的调用