校園導遊程式的設計與實現

2021-03-13 16:53:49 字數 1549 閱讀 3611

河南科技大學

軟體專題訓練

說明書課程名稱軟體專題訓練

題目校園導遊程式的設計與實現

院系 _ 國際教育學院____

班級 __電腦科學與技術101_

學生姓名 ____劉鵬飛

指導教師黎蔚張曉玲

日期 _ 2012.9.5-2012.9.16__

軟體專題訓練任務書

校園導遊程式

一、簡介

1.設計目的:通過校園導遊程式的設計與實現,熟練掌握圖型結構在實際問題中的應用。

2.問題的描述:設計乙個校園模擬導遊程式,為新生或來訪的客人通過與機器的「對話「提供最短路徑的資訊查詢服務。 1.任意選取n個場所,構成乙個無向帶權圖,圖中頂點表示場所,邊上的權值表示兩點間的距離,圖的儲存結構可採用帶權的鄰接矩陣。

2.諮詢以使用者和計算機的對話方式進行,由使用者輸入起始點和終點,輸出資訊:最短路徑是多少?並指出所經過的場所。

3、計算並記錄從校門口到各個場所的最短路徑,即求單源點到其它各個場所的最短路徑。

4、提供校園中任意場所的問路查詢,即求任意兩點之間的最短路徑。

二、資料結構的設計:

由於各個場所通過校園中的道路相連,各個場所和連線它們的道路構成了整個校園的地理環境,所以使用圖這種資料結構對他們去進行描述。以圖中的頂點表示校園內各個場所,應包含場所名稱、代號、簡介等資訊;以邊表示連線各個場所的道路,應包含路徑的長度等資訊;頂點和邊均使用結構體定義,整個圖的資料結構採用教材中介紹的帶權的鄰接矩陣方法。

二、資料結構的設計:

typedef struct arcell

arcell,adjmatrix[max_vertex_num][max_vertex_num];

typedef struct //圖中頂點表示主要景點,存放景點的序號、名稱、介紹等資訊,

infotype;

typedef struct

mgraph;

mgraph b;

void cmd(void)

scanf("%d",&i);

}mgraph initgraph(void)

//initgraph end

用的是乙個switch語句實現輸入不同的序號操作選項,呼叫不同的函式進入不同的操作板塊

// 迪傑斯特拉演算法計,v0為始點

void shortestpath_dij(mgraph * g)

if(v0>=0&&v0vexnum)

flag=0;

} for(v=0;vvexnum;v++) }

d[v0]=0;final[v0]=1;

for(i=1;ivexnum;i++)

{ min=infinity;

for(w=0;wvexnum;w++)

if(!final[w])

if(d[w] final[v]=1;

for(w=0;wvexnum;w++)

if(!final[w]&&(min+g->arcs[v][w].adj {

d[w]=min+g->arcs[v][w].adj;

校園導遊程式

洛陽理工學院 課程設計報告 課程名稱資料結構課程設計 題目校園導遊程式 3 流程圖 4 模組劃分 1 主函式 void main 2 void createudn int v,int a 造圖函式 3 void narrate 說明函式 4 void shortestpath int num 最短路...

校園導遊系統程式 課程設計 報告

設計乙個校園導遊系統程式,為來訪的客人提供各種服務的資訊查詢。1 設計工商學院校園無向圖,所含的景點不少於10個。以圖中頂點表示校內各景點,存放景點名稱 代號 簡介等資訊 以邊表示路徑,存放路徑長度等相關資訊。2 為來訪客人提供圖中任意景點相關資訊的查詢。3 為來訪客人提供圖中任意景點的問路查詢,即...

庫存管理系統的設計與實現

1 維持銷售產品的穩定 銷售 型企業對最終銷售產品必須保持一定數量的庫存,其目的是應付市場的銷售變化。這種方式下,企業並不預先知道市場真正需要什麼,只是按對市場需求的 進行生產,因而產生一定數量的庫存是必需的。但隨著 鏈管理的形成,這種庫存也在減少或消失。2 維持生產的穩定 企業按銷售訂單與銷售 安...