資料結構實驗 C語言版 順序表的基本操作演算法實現

2021-10-11 03:09:31 字數 1882 閱讀 9821

程式設計實現如下功能:

(1)根據輸入順序表的長度n和各個資料元素值建立乙個順序表,並輸出順序表中各元素值,觀察輸入的內容與輸出的內容是否一致。

(2)在順序表的第i個元素之前插入乙個值為x的元素,並輸出插入後的順序表中各元素值。

(3)刪除順序表中第i個元素,並輸出刪除後的順序表中各元素值。

(4)在順序表中查詢值為e的資料元素,如果查詢成功,則顯示「查詢成功」和該元素在順序表中的位置,否則顯示「查詢失敗」。

/*------------實驗要求-----------*/

//程式設計實現如下功能:

//(1)根據輸入順序表的長度n和各個資料元素值建立乙個順序表,並輸出順序表中各元素值,觀察輸入的內容與輸出的內容是否一致。

//(2)在順序表的第i個元素之前插入乙個值為x的元素,並輸出插入後的順序表中各元素值。

//(3)刪除順序表中第i個元素,並輸出刪除後的順序表中各元素值。

//(4)在順序表中查詢值為e的資料元素,如果查詢成功,則顯示「查詢成功」和該元素在順序表中的位置,否則顯示「查詢失敗」。

/*-----------實驗**-----------*/

#include

#include

#define maxlen 50

typedef

struct

sqlist;

/*-----------插入函式----------*/

sqlist sqist_insert

(sqlist l,

int i,

int x)

else

if(l.length>=maxlen)

else

}return l;

}/*-----------刪除函式-----------*/

sqlist sqlist_delete (sqlist l,

int i)

return l;

}/*-----------查詢函式-----------*/

intsqlist_search

(sqlist l,

int x)

/*-----------輸出函式-----------*/

void

sqlist_display

(sqlist l)

/*-----------主函式-----------*/

void

main()

printf

("請輸入插入操作位置:");

scanf

("%d"

,&i)

;printf

("請輸入需要插入的新元素:");

scanf

("%d"

,&x)

; l=

sqist_insert

(l,i,x)

;sqlist_display

(l);

printf

("請輸入刪除操作位置:");

scanf

("%d"

,&i)

; l=

sqlist_delete

(l,i)

;sqlist_display

(l);

printf

("請輸入要查詢的元素:");

scanf

("%d"

,&x);if

(sqlist_search

(l,x)

)else

("查詢失敗!\n");

system

("pause");

}/*-----------後記-----------*/

//插入和刪除會發生溢位錯誤,待解決

// 2020/12/2

資料結構 順序表的實現(C語言版)

include define maxn 100 typedef int status using namespace std typedef structsqlist 初始化順序表 status initlist sqlist l 順序表的插入 將要插入的新元素e放到第i個位置 status lis...

資料結構(C語言版) 順序表的實現

完整 include includeusing namespace std define maxsize 100 define stepsize 10 define success 1 define error 1 typedef int elemtype int flag 0 用於判斷順序表是否初...

資料結構(c語言版)順序表的實現

資料結構原本的書籍上面只寫了演算法部分,不能直接執行,在此貼上c語言實現的完整 需要注意的地方已在 中注釋 include include define list size 100 初始分配空間的節點個數 define list increment 10 新分配空間的節點個數 typedef int...