C語言 資料結構 鍊錶的增刪查改

2021-09-10 01:27:14 字數 1943 閱讀 9712

分別用函式實現了鍊錶的:

1、增加(頭插法,尾插法,有序插入)

2、刪除

3、修改

4、查詢

#define _crt_secure_no_warnings

#include

#include

typedef

struct student

stu,

*pstu;

//列印

void

list_print

(pstu phead, pstu ptail)

printf

("\n");

}//增:頭插法

void

list_insert_head

(pstu *pphead, pstu *pptail,

int i)

else

}//增:尾插法

void

list_insert_tail

(pstu *pphead, pstu *pptail,

int i)

else

}//增:有序插入

void

list_insert_sort

(pstu *pphead, pstu *pptail,

int i)

else

else

//向後遍歷

pbefore = pcur;

//小弟記住大哥的腳印

pcur = pcur->pnext;

//大哥先走一步 }if

(null

== pcur)

//如果到最後,尾插}}

}//刪除

void

list_delete

(pstu *pphead, pstu *pptail,

int i)

else

if(i ==

(*pphead)

->num)

//如果等於第乙個節點(此時可能僅剩乙個節點)

}else

//如果不等於第乙個節點

else}if

(null

== pcur)

//如果到最後}}

//修改

void

list_modify

(pstu *pphead, pstu *pptail,

int i,

float score)

else

else}if

(null

== pcur)

//如果到最後}}

//查詢

void

list_find

(pstu *pphead, pstu *pptail,

int i)

else

else}if

(null

== pcur)

//如果到最後}}

intmain()

list_print

(phead, ptail)

;//刪

printf

("請輸入你要刪除的數字:");

while

(scanf

("%d"

,&i)

!=eof

)//改

printf

("請輸入你要修改的序號和數字:");

while

(scanf

("%d %f"

,&i,

&score)

!=eof

)//查

printf

("請輸入你要查詢的序號:");

while

(scanf

("%d"

,&i)

!=eof

)system

("pause");

}

資料結構 鍊錶基本操作(增 刪 查 改)

鍊錶是一種物理儲存結構上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。根據鍊錶是否是單向的 是否帶頭結點 是否迴圈可以將量表分為 8 種不同的結構。但是這裡我們只研究最簡單的不帶頭結點的單向不迴圈鍊錶,以及最難的帶頭結點的雙向迴圈鍊錶。1.不帶頭的單向不迴圈鍊錶,結構...

資料結構 順序表 增刪查改

include include include include list.h 函式名 createlist 函式功能 建立線性表 引數 無 list createlist void return plist 函式名 destroylist 函式功能 銷毀線性表 函式返回值 無。void destro...

迴圈鍊錶的增 刪 查 改(c語言)

雙向迴圈鍊錶的增刪查改操作 在鍊錶中增加元素我採用的在乙個數的前面插入,因為是雙向的所以在後面插入也可以,由於上篇部落格寫了乙個單鏈表的增刪查改用的在乙個數的後面插入,所以現在用在前面插入。如下 include include pragma warning disable 4996 typedef ...