題目:
利用尾插法建立乙個單鏈表,並從螢幕顯示單鏈表元素列表;根據螢幕上的提示進行單鏈表的刪除、插入等操作。
執行環境:dev-c++ 5.11
下面是正式的**,這裡沒有拆分成多個檔案,直接堆在一起了。
/* 單鏈表程式
包含結構體:
1. 定義單鏈表結構(結點)
包含函式:
1. 獲取鍊錶的指定位置的結點
2. 建立乙個單鏈表
3. 插入節點
4. 輸出已有的單鏈表資訊
5. 按序號刪除結點
6. 按序號查詢結點
7. 提示框函式(負責呼叫上面5個函式)
8. 釋放結點記憶體空間
*/#include#include#define size sizeof(linklist)
// 定義單鏈表的結構(結點)
typedef struct nodelinklist;
// 全域性變數n用來儲存鍊錶結點的個數,也方便輸出提示資訊
int n;
// 1. 移動指標到想要的位置,返回從此位置開始的結點指標型別變數
linklist* remove(linklist* head, int i)
if(j == i)
return p;
else
return null;
}// 2.建立乙個空的單鏈表,並對其進行賦值,返回單鏈表的頭結點的指標
linklist* creat()
// 如果使用者輸入的數值是0(預設表示輸入結束,或者使用者不想再繼續輸入)
p2->next = null; // p2就是尾結點
return head; // 返回頭結點的指標
}// 3. 插入結點
linklist* insert(linklist *head)
return head; // 返回頭結點
}// 4. 輸出鍊錶中所有的數值
void print(linklist *head) while(p!=null);
else
printf("出錯:此煉表為空鍊錶");
}// 5. 按序號刪除結點
linklist* del(linklist *head)
return head;
}// 6. 按序號查詢結點
void search(linklist *head)
printf("查詢結點資料為: %d\n", p->data); }}
// 7. 釋放結點記憶體空間
void free(linklist* head)
printf("鍊錶已被釋放");
}// 8. 提示框函式(負責呼叫以上7個函式)
void menu() }}
// 主函式,只呼叫提示框函式
int main()
實驗三 2單鏈表
include using namespace std const int maxsize 100 struct node class student student student student student float a,int n int student get int i if p n...
實驗三 單鏈表及其操作
1.通過c語言結構體定義鍊錶結點 2.定義並實現建立空鍊錶操作 3.定義並實現向鍊錶指定位置插入結點操作 4.定義並實現從鍊錶指定位置刪除結點操作 1.在vc 中建立名為linklist的空專案,並將commons.h檔案新增到頭檔案目錄中 2.在工程的頭檔案目錄中建立link list.h檔案,在...
單鏈表實驗
實驗報 告 實驗一 單鏈表及其應用 一 實驗目的 1 掌握線性表的鏈結儲存結構 2 驗證單鏈表及其基本操作的實現 3 進一步理解演算法與程式的關係,能夠將單鏈表演算法轉換為對應的程式。二 實驗內容 1 用頭插法 或尾插法 建立帶頭結點的單鏈表 2 用已建立的單鏈表實現插入 刪除 查詢等基本操作。三 ...