日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

粗暴,干就完了----徐晓冬似的C语言自学笔记-----实现一个链表结构

發布時間:2023/12/10 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 粗暴,干就完了----徐晓冬似的C语言自学笔记-----实现一个链表结构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 #include <stdio.h> 2 #include <stdlib.h> 3 #define N 5 4 /*N 假定數組長度為5*/ 5 typedef struct snode 6 { 7 int data; 8 struct snode *next; 9 } SNODE; 10 11 /*第一步,添加鏈表頭信息*/ 12 SNODE *createhead(int a[]) 13 { 14 SNODE *h,*p,*q; 15 /*q為上一節點,p為當前節點*/ 16 int i; 17 q=(SNODE *)malloc(sizeof(SNODE)); 18 h=q; 19 for(i=0;i<N;i++) 20 { 21 p=(SNODE *)malloc(sizeof(SNODE)); 22 p->data = a[i]; 23 q->next=p; 24 q=p; 25 } 26 q->next=0; 27 return h; 28 } 29 30 /*第二步打印鏈表中的元素*/ 31 void showstars(SNODE *h) 32 { 33 SNODE *p; 34 p=h->next; 35 while(p) 36 { 37 printf("%d 其地址為 %x\n",p->data,p); 38 p=p->next; 39 } 40 } 41 42 43 /*第三步刪除/回收節點*/ 44 void revokeresource(SNODE *h) 45 { 46 SNODE *p,*q; 47 p=h->next; 48 while(p) 49 { 50 q=p->next; 51 printf("哦,no~~~%d被回收了\n",p->data); 52 free(p); 53 p=q; 54 } 55 free(h); 56 } 57 58 /*添加一個節點,目標在值為4的結點前添加一個結點,如果值為4的節點不存在,則在末尾添加一個結點*/ 59 void insert(SNODE *h,int a,int d) 60 { 61 SNODE *p,*q; 62 SNODE *s; 63 s=(SNODE *)malloc(sizeof(SNODE)); 64 s->data=d; 65 q=h;p=h->next; 66 while(p) 67 { 68 if(p->data==a) break; 69 q=p;p=p->next; 70 } 71 s->next=q->next; 72 q->next=s; 73 showstars(h); 74 } 75 76 /*刪除值為targetdta的鏈接節點*/ 77 void collectnode(int targetdata,SNODE *h) 78 { 79 SNODE *p,*q; 80 p=h->next; 81 q=h; 82 while (p) 83 { 84 if(p->data==targetdata) 85 { 86 break; 87 } 88 q=p;p=p->next; 89 } 90 if(p) 91 { 92 q->next=p->next; 93 free(p); 94 } 95 } 96 97 void main() 98 { 99 int saiwa[N]={1,2,3,4,5}; 100 SNODE *head; 101 head=createhead(saiwa); 102 showstars(head); 103 printf("================*在數組的值4前插入節點值8=================\n"); 104 insert(head,4,8); 105 106 printf("================*回收節點4=================\n"); 107 collectnode(4,head); 108 showstars(head); 109 }

?

?輸出結果:

?

轉載于:https://www.cnblogs.com/saintdingspage/p/11231302.html

總結

以上是生活随笔為你收集整理的粗暴,干就完了----徐晓冬似的C语言自学笔记-----实现一个链表结构的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。