1樓:小甜甜愛亮亮
c語言建立單鏈表如下:
#include"stdio.h"
#include"stdlib.h"
#include"malloc.h"
#include "iostream.h"
typedef struct node
int data;
node * next;
}node , * list;
void create(int n)
{int c;
list s,l;
l=(list)malloc(sizeof(node));
l->next=null;
printf("請輸入第1個資料:");
scanf("%d",&c);
l->data=c;
for(int i=2;i<=n;i++){s=(list)malloc(sizeof(node));
printf("請輸入第%d個資料:",i);
scanf("%d",&c);
s->data=c;
s->next=l;
l->next =s;
printf("鍊表建立成功!");
void main()
int n;
printf("請你輸入鍊表的個數:");
scanf("%d",&n);
create(n);
單鏈表建立方法:
單鏈表的建立有頭插法、尾插法兩種方法。
1. 頭插法
單鏈表是使用者不斷申請 儲存單元和改變鏈結關係而得到的一種特殊 資料結構,將鍊表的左邊稱為鏈頭,右邊稱為鏈尾。頭插法建單鏈表是將鍊表右端看成固定的,鍊表不斷向左延伸而得到的。頭插法最先得到的是尾結點。
由於鍊表的長度是隨機的,故用乙個while迴圈來控制鍊表中結點個數。假設每個結點的值都大於o,則迴圈條件為輸入的值大於o。申請 儲存空間可使用malloc()函式實現,需設立一申請單元 指標,但malloc()函式得到的指標並不是指向 結構體的指標,需使用 強制型別轉換,將其轉換成結構體型指標。
剛開始時,鍊表還沒建立,是一空鍊表,head 指標為null。
鍊表建立的過程是申請空間、得到資料、建立鏈結的迴圈處理過程。
2. 尾插法
若將鍊表的左端固定,鍊表不斷向右延伸,這種建立鍊表的方法稱為尾插法。尾插法建立鍊表時,頭 指標固定不動,故必須設立乙個搜尋指標,向鍊表右邊延伸,則整個演算法中應設立三個鍊表指標,即頭指標head、搜尋指標p2、申請單元指標pl。尾插法最先得到的是 頭結點。
2樓:環暢然
1、建立節點的結構體型別,裡面要有乙個指向此型別結構的指標。2、建立乙個頭指標,乙個尾指標3、每次有新節點進入鍊表時,用malloc分配空間,然後用鍊表尾端的節點指標指向新節點,新節點的指標指向null。這只是個大概的流程,如果看不懂,可以看一下資料結構相關的書
3樓:匿名使用者
wdwqeqeqds
4樓:小雯傻豬
c語言連結串列排序,C語言連結串列排序
問明 include stdafx h include stdlib h 建立一個節點,data為value,指向null node create intvalue node head node malloc sizeof node head data value head next null re...
C語言連結串列與結構體,c語言結構體與連結串列
北風微風 include include define null 0 define len sizeof struct student struct student int n struct student creat void if n 0 head null p2 next null free ...
c語言前景如何,C語言前景如何
呵呵,我是學測控專業的,c語言是所有編寫程式的基礎,很多的以後的語言和程式都是基於它的基礎之上的!學吧,它只是基礎,就像中學和大學,中學只是為了大學而鋪墊的!你說中學的前景怎麼樣? 不要理別人說什麼,只要自己忠於這個專業就行了,至於前景如是靠你自己學得好不好,好的話,金子在那都會發亮的,要想在程式設...