1樓:
#include
#include
typedef struct listlist;
list *createlist(int n)return head;
} list *a_b(list *a,list *b)//計算a-b,計算結果儲存在a中
else if(pa->next==null)//pa是表尾else//非表頭元素和表尾元素
break;
}else pb=pb->next;
}if (flag==0)
}return a;
} int main()
return 0;
printf("\n");
}程式的執行結果:
若滿意,望採納!
2樓:匿名使用者
先寫個查詢的函式void search(l* list,int data),在鍊錶list中查詢元素data(這裡寫的是int型,可根據你鍊錶中元素的型別來決定);再寫個求集合差的函式l* difference(l* la, l*lb),該函式的主要內容是,遍歷la中的所有元素,呼叫search函式在lb中進行查詢,若沒找到,則將la中的該節點插入到新建的鍊錶(設為list)中,最後返回list的首位址。
c語言鍊錶問題,誰幫忙設計個鍊錶啊!高手來幫忙!急!急!急!
3樓:匿名使用者
struct listnode
;listnode *head = new listnode;
head->date = 0;
head ->next = null;
鍊錶ok了。。自己寫插入,刪除,查詢,修改函式。。
關於c語言鍊錶刪除問題!急求熱心的高手幫助!!!!!急急急!!! 10
4樓:匿名使用者
問題1:基本思路正確,但是在實際應用中,頭結點head是不存放資料的,因為這樣不便於操作,需要額外討論插入在頭結點之前的情況,而且頭結點很多時候要用在二維陣列上,所以不建議加入資料
問題2:插入到結尾也需要遍歷,p1l遍歷到尾節點然後pl->next = stud就行了
問題3:首先只需要2個游標指標就夠了,分別指向要插入位置的前後節點以下程式按照頭結點無資料來編寫:
struct student *insert(head,stud)}if(flag != 0)//插入鍊錶末尾
5樓:倔強的小時光
程式有問題的,注意大括號,if(p0一》num>pl一》num)&&(pl一》next=null)中的後乙個改為「==」,能看懂吧?呵呵,簡寫了,相信你能看懂的。
程式的演算法是沒有問題的,思路就是按這樣來的,主要是程式的規範問題,建議你執行下,看出什麼錯誤,然後仔細看看。希望對你有所幫助。
6樓:匿名使用者
**有,完全無誤。
可是回答了幾個**問題,沒有乙個給分和給推薦的!
傷心,失望,木意思……
關於c語言鍊錶的問題,關於C語言鍊錶的問題
slist是你定義的結構體的名稱,你寫的動態記憶體分配,意思是申請乙個指向slist的slist記憶體空間的指標,沒有這個名稱,就相當於乙個人沒了名字,幹什麼都不方便 slist就是nde的別名 因為你用到關鍵字typedef typedef是給型別取別名之意 如 typedef unsigned ...
C語言變成問題急急急急急,c語言問題急急急
include stdio.h int main c語言環境下的,不過臨時寫的可能語法有點小問題的呢稍微除錯一下,另外這個演算法是很普通的演算法沒有什麼特別之處,速度也一般般 include stdio.h main printf n 這個正確 除錯過了!c語言問題急急急 1.main函式的第一行函...
c語言鍊錶讀取檔案,程式沒法執行,求幫忙,急急急
先把鍊錶裡面的資料存在e盤,以二進位制形式存的然後再在程式中讀取那些資料,輸出後能輸出資料,但在資料後面會有亂碼,然後程式出錯停止執行。存資料程式 fp fopen e student wb while p1 null printf 存檔成功!以存在e student中。n 讀取 fp fopen ...