校園導遊課程設計實驗報告

2021-03-13 19:33:33 字數 1947 閱讀 4014

《資料結構》課程

設計實驗

報告課程名稱資料結構》課程設計

課程設計題目: 校園導遊

姓名邱可昉

院系計算機學院

專業電腦科學與技術

班級10052313

學號10051319

指導老師: 王立波

2023年5月18日

目錄1.課程設計的目的3

2.問題分析3

3.課程設計報告內容3

(1)概要設計3

(2)詳細設計3

(3)測試結果7

(4)程式清單9

4.個人小結14

1.課程設計的目的

《資料結構》是計算機軟體的一門基礎課程,電腦科學各領域及有關的應用軟體都要用到各種型別的資料結構。學好資料結構對掌握實際程式設計能力是很有幫助的。為了學好《資料結構》,必須編寫一些在特定資料結構上的演算法,通過上機除錯,才能更好地掌握各種資料結構及其特點,同時提高解決計算機應用實際問題的能力。

2.問題分析

[問題描述]

(1)設計你的學校的校園平面圖,所含景點不少於10個。以圖中頂點表示學校各景點,存放景點名稱、代號、簡介等資訊;以邊表示路徑,存放路徑長度等相關資訊。

(2)為來訪客人提供圖中任意景點的問路查詢,即查詢任意兩個景點之間的一條最短的簡單路徑。

(3)為來訪客人提供圖中任意景點相關資訊的查詢。

[測試資料]

由讀者根據實際情況指定。

3.課程設計報告內容

(1)概要設計

根據學校具體分布構建無向連通圖,再通過幾個模組執行函式完成校園資訊簡介查詢,校園景點間最短距離計算和輸出以及退出功能。

(2)詳細設計

//定義全域性變數

int bian[n][n邊的值

int zhjl[n][n兩點間的最短距離

int path[n][n經過的景點

//構建dy類

class dy;

首先,通過dy類的建構函式構建鄰接矩陣。

dy::dy()

接著,jj函式實現景點列表輸出和景點查詢。

void dy::jj()

}然後zuiduan函式先判斷輸入兩點的正確性,通過呼叫floyed函式和shuchu函式實現最短路的計算和輸出。

int dy::zuiduan()

else

return 1;

}再者,floyed函式用三個for迴圈求解最短路,將兩點間的n個點看做乙個點,用path陣列記錄這個點,在依次求出各點間最短路,並用zdjl陣列儲存起來。

void dy::floyed()

for(k=1;k for(i=1;ifor(j=1;jif(zdjl[i][j]>(zdjl[i][k]+zdjl[k][j]))

用path記錄從i到j的最短路徑上點j的前驅景點的序號

zdjl[i][j]=zdjl[i][k]+zdjl[k][j];

path[i][j]=k;

path[j][i]=k;

}最後,shuchu函式判斷輸入兩景點編號大小,完成正序輸出和逆序輸出。

void dy::shuchu(int i,int j)

else

else

cout<<"輸入錯誤!不存在此路"<}

(3)導遊系統無向連通圖構建

(4)測試結果

(4)程式清單

#include

//#include

using namespace std;

#define int_max 10000

#define n 11

//定義全域性變數

int bian[n][n邊的值

int zdjl[n][n兩點間的最短距離

int path[n][n經過的景點

class dy;

dy::dy(){

for(int i=0;i

課程設計實驗報告

上海應用技術學院 課程設計 2011 2012學年第二學期 設計題目成績記錄簿 院 系 電腦科學與資訊工程學院 專業計算機應用技術 班級 12104006 學號 1210400631 學生姓名溫源 設計時間 2013.07.1 2012.07.12 指導教師宋智禮 提交日期 上海應用技術學院課程設計...

課程設計實驗報告

實驗報告 課程名稱統計學課程設計 實驗類別 綜合性 設計性 其他 實驗專案統計學課程設計 專業班級 姓名 學號 實驗室號實驗組號 實驗時間批閱時間 指導教師成績 瀋陽工業大學實驗報告 適用經 管 文 法專業 專業班級學號姓名 實驗專案 spss資料處理 附件 1 瀋陽工業大學實驗報告 適用經 管 文...

PLC課程設計實驗報告

可程式設計控制器原理與實踐 課程設計 實驗報告 姓名 楊益偉 班級 自動化1202 學號 120900321 指導教師 張義紅 2014年11月 東華大學資訊科學與技術學院 目錄一 plc課程設計目的及要求3 二 plc的技術特點及應用3 三 課程設計內容5 3.1智慧型搶答器系統5 3.1.1控制...