資料結構中順序表的實現

2022-05-14 08:03:18 字數 1630 閱讀 8504

題目:建立乙個靜態的順序表存放整數,大小為10,完成以下的操作。

(1)輸入6個整數,列印出順序表的內容,並顯示表中的剩餘空間個數。

(2)在順序表中的第3個位置插入0,列印出順序表中的內容,並顯示表中剩餘的空間個數。

(3)再試圖插入表中第11個位置整數0,程式提示超出範圍。

(4)刪除表中第6個元素,列印出順序表中的內容,並表示表中剩餘的空間個數。

#include

#define maxsize 10

//靜態順序表的各種操作

//向順序表中插入元素

//引數*len:表的長度 //引數i:插入元素的位置

//引數x:待插入的元素值

void insertelem(int sqlist,int *len,int i,int x)

int t;

if(*len==maxsize || i*len+1)

printf("this insert is illegal\n");

return;

} //非法插入

for(t=*len-1;t>=i-1;t--)

sqlist[t+1]=sqlist[t];

sqlist[i-1]=x; //插入元素

*len=*len+1; //表長增加1

//向順序表中刪除元素

//引數*len:表的長度

//插入元素的位置

void delelem(int sqlist,int *len,int i)

int j; if(i*len)

printf("this insert is illegal");

return; //非法插入

for(j=i;j<=*len-1;j++)

sqlist[j-1]=sqlist[j]; //將第i個元素之後的元素前移

*len=*len-1; //表長減1

} //測試函式

void main()

int sqlist[maxsize]; //定義乙個靜態順序表

int len; int i;

for(i=0;i<6;i++)

scanf("%d",&sqlist[i]); //從鍵盤輸入6個整數

len=6; for(i=0;iprintf("%d ",sqlist[i]); //輸出6個整數

printf("\nthe spare length is %d\n",maxsize-len); //顯示表中的剩餘空間

insertelem(sqlist,&len,3,0); //在表中第3個位置插入0

for(i=0;iprintf("%d ",sqlist[i]); //輸出順序表中的所有元素

printf("\nthe space length is %d\n",maxsize-len); //顯示表中的剩餘空間

insertelem(sqlist,&len,11,0); //在表中第11位置插入整數0

delelem(sqlist,&len,6); //刪除順序表中的第6個元素

for(i=0;iprintf("%d ",sqlist[i]); //輸出順序表中的所有元素

printf("\nthe space length is %d\n",maxsize-len); //顯示表中的剩餘空間

資料結構(順序表的實現)

include define max len 100 容器的最大存量 using namespace std 各種資料結構,無非 建構函式 初始化 什麼資料型別 插入 插入的位置和插入的元素 刪除 刪除那個元素 查詢 按值查詢還是按址查詢以及查詢的方向 遍歷 下標遍歷和迭代器遍歷 cout 順序表 ...

資料結構 順序表的實現

目錄 一 順序表 二 順序表對應功能的 示例 順序表所需要實現的一般功能 順序表的優缺點 define size 20 typedef struct sequencelist list list initlist bool isempty list sl bool isfull list sl bo...

資料結構 順序表的實現

實現順序表的插入 刪除 檢視等操作。操作選單要求 插入 輸入插入的位置和資料,輸出插入後的資料 刪除 輸入要刪除的位置,輸出刪除後的資料 檢視 檢視當前順序表的資料 退出。include include define maxsize 50 typedef int elemtype define li...