資料結構課程設計報告 迷宮求解問題

2021-04-12 21:45:13 字數 2102 閱讀 1918

課題設計1:迷宮求解

一. 需求分析:

本程式是利用非遞迴的方法求出一條走出迷宮的路徑,並將路徑輸出。

首先由使用者輸入一組二維陣列來組成迷宮,確認後程式自動執行,當迷宮有完整路徑可以通過時,以0和1所組成的迷宮形式輸出,標記所走過的路徑結束程式;當迷宮無路徑時,提示輸入錯誤結束程式。

二、 概要設計:

1.抽象資料型別定義:

adt find

資料關係:r1=

基本操作:

find (&s)

初始條件:已初始化棧s,且棧為空

操作結果:從棧s中找出相對應的資料關係,並輸出結果

}adt find

2. 主程式的流程以及各程式模組之間的呼叫關係:

(1).定義變數i、j、w、z為整形變數

(2).輸入迷宮二維陣列maze(0:m,0:n)

(3).呼叫子程式find ()

(4).結束程式

三、相應的源程式如下:

#include

#include

typedef enum status;

typedef struct

postype

typedef struct

selemtype

typedef struct

sqstack;

status initstack(sqstack &s

status push(sqstack &s,selemtype &a

status pop(sqstack &s,selemtype &a

status stackempty(sqstack s

status mazepath(int maze[12][12],sqstack &s, postype start, postype end);

void initmaze(int maze[12][12],int size

void printmaze(int maze[12][12],int size

status pass(int maze[12][12],postype curpos

void markfoot(int maze[12][12], postype curpos);

postype nextpos(postype curpos, int dir

void printpath(int maze[12][12],sqstack s,int size);

void main (void)

initmaze(maze,size

printmaze(maze,size

postype start,end

printf("輸入入口行座標和列座標:");scanf("%d",&start.row);scanf("%d",&start.line);

printf("輸入出口行座標和列座標:");scanf("%d",&end.row);scanf("%d",&end.line);

if(mazepath(maze,s,start,end))

printpath(maze,s,size);

else printf("找不到通路!\n\n");}}

status mazepath(int maze[12][12],sqstack &s, postype start, postype end)

else

if (e.di<4)

}}} while (!stackempty(s));

return error;

} void initmaze(int maze[12][12],int size)

for(i=0;i }

else if(select=='b'||select=='b')

for(i=0;i }

else if(select=='\n')goto label;

else printf("輸入錯誤!");

}void printmaze(int maze[12][12],int size)

printf("%c",'#');

printf("\n");

} for(i=0;i

資料結構課程設計報告迷宮

題目 迷宮問題 姓名 學號 班級 指導教師 2012年6月6日 1.問題描述 輸入任意大小的迷宮資料,用遞迴和非遞迴方法求出一條走出迷宮的路徑,並將路徑輸出。2.設計思路 以 0和1分別表示迷宮中的通路和障礙,沒有通路則不顯示。未顯示為得出沒有通路的結論 走迷宮的方式是乙個乙個的線路去試如果是死路的...

資料結構課程設計 迷宮 工作日誌

備註 必須與自己的專案緊密結合,按照工作階段和進度真實填寫。每人每週填寫1份,從第10周周一開始,共填寫個6周,每週五統一提交。備註 必須與自己的專案緊密結合,按照工作階段和進度真實填寫。每人每週填寫1份,從第10周周一開始,共填寫個6周,每週五統一提交。備註 必須與自己的專案緊密結合,按照工作階段...

資料結構課程設計報告

交通諮詢系統設計 不用輸入程式語句,也不用那個截圖 不用太著急,報告周五之前給我就行了 列印和壓縮包都要哈!對了,這段文字記得刪掉啊嘿嘿 題目名稱交通諮詢系統設計 院 系 管理學院 課程名稱資料結構課程設計 班級資訊 10 2 學生姓名呂德麗 指導教師李長雲 目錄一 需求分析及選題要求 3 1 問題...