c語(yǔ)言課程設(shè)計(jì)-迷宮游戲

c語(yǔ)言課程設(shè)計(jì)-迷宮游戲

ID:1949359

大小:70.00 KB

頁(yè)數(shù):15頁(yè)

時(shí)間:2017-11-13

c語(yǔ)言課程設(shè)計(jì)-迷宮游戲_第1頁(yè)
c語(yǔ)言課程設(shè)計(jì)-迷宮游戲_第2頁(yè)
c語(yǔ)言課程設(shè)計(jì)-迷宮游戲_第3頁(yè)
c語(yǔ)言課程設(shè)計(jì)-迷宮游戲_第4頁(yè)
c語(yǔ)言課程設(shè)計(jì)-迷宮游戲_第5頁(yè)
資源描述:

《c語(yǔ)言課程設(shè)計(jì)-迷宮游戲》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、計(jì)算機(jī)技術(shù)基礎(chǔ)課程設(shè)計(jì)C語(yǔ)言設(shè)計(jì)報(bào)告題目:完整的二維迷宮游戲?qū)W院:工商管理學(xué)院專(zhuān)業(yè):信息系統(tǒng)與信息管理班級(jí):050507姓名:孫月指導(dǎo)教師:張首偉設(shè)計(jì)日期:2004年12月10日題目:完整的二維迷宮游戲一、選題背景:?jiǎn)栴}的提出:我們?cè)谕婷詫m游戲的時(shí)候,常常在過(guò)了一關(guān)之后就結(jié)束了,這里設(shè)計(jì)的迷宮游戲足夠多,難以程度也不盡相同,可以過(guò)癮的玩。模仿的有那么一點(diǎn)意思,還請(qǐng)多多指教!二、設(shè)計(jì)思想:?。?).問(wèn)題描述用一個(gè)m行n列的二維數(shù)組來(lái)表示迷宮。數(shù)組中每個(gè)元素的取值為0或1,其中值0表示通路,值1表示阻塞,入口在左上方(

2、1,1)處,出口在右下方(m,n)處,如圖所示。要求求出從迷宮入口到出口有無(wú)通路,若有通路則指出其中一條通路的路徑,即輸出找到通路的迷宮數(shù)組,其中通路上的“0”用另一數(shù)字(例如8)替換,同時(shí)打印出所走通路徑上每一步的位置坐標(biāo)及下一步的方向。(2).求解方法說(shuō)明:1.為使問(wèn)題一般化,假設(shè)以二維數(shù)組maze(1:m,1:n)表示迷宮,并設(shè)maze(i,j)表示任一位置。2.對(duì)每個(gè)位置maze(i,j),可移動(dòng)的八個(gè)方向從正東起順時(shí)針?lè)较蝽樞驗(yàn)椋篍,SE,S,SW,W,NW,N,NE。再用一個(gè)二維數(shù)組move表示這八個(gè)方

3、向上坐標(biāo)的增量,如下表所示,move(v,1)表示第v個(gè)方向上i的增量,move(v,2)表示第v個(gè)方向上j的增量。三、程序流程圖四、程序清單:一、二、#include#include#include#include#include#defineN20/*迷宮的大小,可改變*/int??oldmap[N][N];/*遞歸用的數(shù)組,用全局變量節(jié)約時(shí)間*/int??yes=0;/*yes是判斷是否找到路的標(biāo)志,1找到,0沒(méi)找到

4、*/int??way[100][2],wayn=0;/*way數(shù)組是顯示路線用的,wayn是統(tǒng)計(jì)走了幾個(gè)格子*/voidInit(void);/*圖形初始化*/voidClose(void);/*圖形關(guān)閉*/voidDrawPeople(int*x,int*y,intn);/*畫(huà)人工探索物圖*/voidPeopleFind(int(*x)[N]);/*人工探索*/voidWayCopy(int(*x)[N],int(*y)[N]);/*為了8個(gè)方向的遞歸,把舊迷宮圖拷貝給新數(shù)組*/int??FindWay(int(

5、*x)[N],inti,intj);/*自動(dòng)探索函數(shù)*/voidMapRand(int(*x)[N]);/*隨機(jī)生成迷宮函數(shù)*/voidPrMap(int(*x)[N]);/*輸出迷宮圖函數(shù)*/voidResult(void);/*輸出結(jié)果處理*/voidFind(void);/*成功處理*/voidNotFind(void);/*失敗處理*/voidmain(void)/*主函數(shù)*/{??intmap[N][N];/*迷宮數(shù)組*/??charch;??clrscr();??printf("Pleasesele

6、cthand(1)elseauto");/*選擇探索方式*/??scanf("%c",&ch);??Init();??/*初始化*/??MapRand(map);/*生成迷宮*/??PrMap(map);/*顯示迷宮圖*/??if(ch=='1')????PeopleFind(map);/*人工探索*/??else????FindWay(map,1,1);/*系統(tǒng)自動(dòng)從下標(biāo)1,1的地方開(kāi)始探索*/??Result();/*輸出結(jié)果*/??Close();}voidInit(void)/*圖形初始化*/{??in

7、tgd=DETECT,gm;??initgraph(&gd,&gm,"c:\tc");}voidDrawPeople(int*x,int*y,intn)/*畫(huà)人工控制圖*/{/*如果將以下兩句注釋掉,則顯示人工走過(guò)的路徑,*/??setfillstyle(SOLID_FILL,WHITE);??/*設(shè)置白色實(shí)體填充樣式*/??bar(100+(*y)*15-6,50+(*x)*15-6,100+(*y)*15+6,50+(*x)*15+6);/*恢復(fù)原通路*/??switch(n)/*判斷x,y的變化,8個(gè)方向的

8、變化*/??{????case1:(*x)--;break;/*上*/????case2:(*x)--;(*y)++;break;/*右上*/????case3:(*y)++;break;??/*右*/????case4:(*x)++;(*y)++;break;/*右下*/????case5:(*x)++;break;??/*下*/????case6:(*x

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。