c 语言链表的另一种实现
生活随笔
收集整理的這篇文章主要介紹了
c 语言链表的另一种实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
//L3_1.c#include<stdio.h>
#include<stdlib.h>//定義鏈表節(jié)點類型,這是C語言中非常經(jīng)典的結(jié)構(gòu)體
//但是這中定義有一點點難以理解struct node *next
//這應(yīng)該是一種遞歸定義吧 ,定義一個結(jié)構(gòu)體指針nextstruct node {int d;struct node *next;};void main(){int x;struct node *head,*p,*q;head =NULL; //將鏈表的頭指針設(shè)為空 q=NULL; scanf("%d",&x); //輸入一個正整數(shù)while(x>0) //如果輸入的值大于0{p=malloc(sizeof(struct node)); //申請一個節(jié)點并分配內(nèi)存p->d=x; //設(shè)置當前節(jié)點數(shù)據(jù)域為輸入的正整數(shù)x//(*p).d=xp->next=NULL; //設(shè)置當前的指針域為空if (head==NULL) //若鏈表為空,則將頭指針指向當前節(jié)點phead=p; elseq->next=p; //若鏈表不為空,則將當前節(jié)點鏈接在該鏈表的最后q=p;// printf(*q); scanf("%d",&x);}p=head; //下面為打印一個鏈表while(p!=NULL){printf("%d\n",p->d);//輸出當前節(jié)點的數(shù)據(jù)q=p; //刪除當前節(jié)點p=p->next; free(q); //釋放刪除的} return ; }
總結(jié)
以上是生活随笔為你收集整理的c 语言链表的另一种实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 链表c的经典实现(一)
- 下一篇: C 语言链表其他实现