電腦科學與技術系
實驗報告
專業名稱電腦科學與技術
課程名稱 《 資料結構 》
專案名稱順序表查詢
班級學號姓名
同組人員無
實驗日期
一、實驗目的與要求:
(簡述本次實驗要求達到的目的,涉及到的相關知識點,實驗的具體要求。)
(一)實驗目的:
應用順序表來實現對資料的查詢
(二)實驗要求:
用順序表實現對資料進行查詢
(三)實驗環境:
vc++6.0.
二、實驗內容
#include<>
#include<>
#include<>
#define error 0
#define ok 1
#define init_size 5 /*初始分配的順序表長度*/
#define increm 5溢位時,順序表長度的增量*/
typedef int elemtype; /*定義表元素的型別*/
typedef struct sqlistsqlist;
int initlist_sq(sqlist *l);
int createlist_sq(sqlist *l,int n);
int listinsert_sq(sqlist *l,int i,elemtype e);
int printlist_sq(sqlist *l);
int listdelete_sq(sqlist *l,int i);
int listlocate(sqlist *l,elemtype e);
//初始化順序表
int initlist_sq(sqlist *l)/*initlist*/
//建立順序表
int createlist_sq(sqlist *l,int n)
return ok;
}/*createlist*/
/*輸出順序表中的元素*/
int printlist_sq(sqlist *l)/*printlist*/
//在順序表中插入
int listinsert_sq(sqlist *l,int i,elemtype e)
for(k=l->length-1;k>=i-1;k
l->slist[k+1]=k;
}l->slist[i-1]=e
l->length
return ok;
}/*listinsert*/
/*在順序表中刪除第i個元素*/
int listdelete_sq(sqlist *l,int i)
else if(i < 0 || (i > l->length))
else
}/*在順序表中查詢指定值元素,返回其序號*/
int listlocate(sqlist *l,elemtype e)
}printf("沒有查詢到相應的數\n");
return error;
}//主函式
int main()else
printf("error");
printf請選擇操作方式n");
printf("\t 1: 查詢 \t 2:刪除 \t 3: 輸出表\t 0: 退出\n 輸入運算元:");
scanf("%d", &n);
while(n)
if(n == 2)
if(n == 3)
printf("\t請選擇操作方式
printf("\t 1: 查詢 \t 2:刪除 \t 0: 退出\n 輸入運算元:");
scanf("%d", &n);
}return 0;
}三、實驗分析與小結
(實驗過程中的問題分析、產生的原因以及解決方法;實驗結果分析;有待優化思路)
(1)實驗結果截圖
(2)總結
通過順序表陣列元素的特點,我們可以對資料實現順序查詢。
四、 其它
得分(百分制
資料結構順序表實驗報告
系專業 2008級 01 班 姓名學號 2010年1 0月 9日 define maxsize 100 include include typedef int elemtype typedef struct sqlist void initlist sqlist l void creatsqlist...
資料結構實驗報告順序表
選課時間段 周四6 7 8 9 序號實驗報告 課程名稱 資料結構 實驗名稱 順序表的實現 指導教師 學生姓名 學生學號 實驗日期 2013年4月11日 一 實驗目的 二 實驗內容 三 實驗步驟 1 需求分析 本演示程式用c語言編寫,完成順序表的生成,任意位置的插入 刪除,以及確定某一元素在順序表中的...
資料結構實驗報告查詢演算法
資料結構 第八次實驗報告 1 實驗內容 1 有序表的二分查詢 建立有序表,然後進行二分查詢 2 二叉排序樹的查詢 建立二叉排序樹,然後查詢 2 需求分析 二分查詢的基本思想是將n個元素分成大致相等的兩部分,取a n 2 與x做比較,如果x a n 2 則找到x,演算法中止 如果xa n 2 則只要在...