freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)—迷宮求解-資料下載頁(yè)

2025-06-27 10:34本頁(yè)面
  

【正文】 int map[MAZE_MAX+2][MAZE_MAX+2],int x,int y){ int z1,z2。 for(z1=0,z2=2*y+2。z1=2*x+2。z1++)map[z1][0]=1,map[z1][z2]=1。 for(z1=0,z2=2*x+2。z1=2*y+2。z1++)map[0][z1]=1,map[z2][z1]=1。 map[1][2]=1。 map[2*x+1][2*y]=1。srand((unsigned)time(NULL))。 search(map,rand()%x+1,rand()%y+1)。 map[1][0] = 39。139。 map[x2][y1] = 39。139。}//生成迷宮文件 C 實(shí)現(xiàn)void Maze_File_Make (int mazeMap[MAZE_MAX * 2][MAZE_MAX * 2],int x,int y ){ 生成隨機(jī)迷宮地圖文件并讀取。 }2. //打印迷宮void PrintMaze(MazeType maze){ 打印迷宮路徑地圖。 }//為建立的迷宮找到一條路徑Status MazePath(MazeType amp。maze,PosType start,PosType end){ SqStack s。SElemType e。InitStack(s)。PosType curpos=start。 curstep = 1。 do{if(Pass(maze,curpos)){ FootPrint(maze,curpos)。e=CreateSElem(curstep,curpos,1)。 Push(s,e)。if(PosEquare(curpos,end))return TURE。 curpos=NextPos(curpos,1)。curstep++。 } else{if(!StackEmpty(s)){ Pop(s,e)。while( == 4 amp。amp。 !StackEmpty(s)){ MarkPrint(maze,)。Pop(s,e)。curstep。 } if( 4 ){ ++。Push(s,e)。curpos=NextPos(,)。}}} }while(!StackEmpty(s))。 return FALSE。}3. include PosType start。PosType end。PosType curPos。PosType prePos。int getPos(){pos = 鍵位標(biāo)識(shí)符。 return pos。}Status MovePos ( MazeType amp。maze, int pos ){ switch(pos){ case : 向pos方向移動(dòng)。 } return 0。}bool isMoveable ( MazeType amp。maze ,PosType pos){ if ( [][] == 1 )return false。 return true。}void disPlay ( MazeType amp。maze, PosType pos ){ 顯示迷宮。 }void disPlay_2 ( MazeType amp。maze, PosType pos ){ 顯示小人的當(dāng)前位置。}4. 主函數(shù)include int main(){ //主菜單 MainChoiceMenu()。 return 0。}//主函數(shù)函數(shù)調(diào)用關(guān)系圖如下:四: 調(diào)試分析1. 本次作業(yè)比較簡(jiǎn)單 , 只是后期在原來(lái)的程序上做了許多擴(kuò)展, 如實(shí)現(xiàn)隨機(jī)迷宮地圖的自動(dòng)生成 和 游戲模式. 初期的調(diào)試總是輸出 “沒(méi)有找到路徑”, 但是迷宮的路徑確實(shí)是存在的,后來(lái)發(fā)現(xiàn)是由于迷宮的自生成算法與輸入有些不一致, 更正了行列順序后,程序能正常運(yùn)行.2. 在設(shè)計(jì)迷宮初始化函數(shù)的時(shí)候,參數(shù)的傳遞出現(xiàn)錯(cuò)誤,主要是對(duì)指針和引用的理解出現(xiàn)混淆,通過(guò)查閱相關(guān)資料, 弄清楚了兩者之間的區(qū)別,指針是用于指向一個(gè)變量的地址,而引用只是對(duì)一個(gè)已存在變量的一個(gè)重命名.3. 在調(diào)試過(guò)程中使用printf函數(shù)輸出標(biāo)志信息跟蹤函數(shù)調(diào)用,收到了顯著的效果,大大提高了調(diào)試效率,有利于以后的代碼調(diào)試.4. 使用了小部分的win32 API,發(fā)現(xiàn)使用局部句柄時(shí),調(diào)用的winAPI不能正常運(yùn)行,改成全局后問(wèn)題解決.5. 程序源代碼中仍有部分重復(fù)代碼,可以模塊化,實(shí)現(xiàn)代碼重用.6. 在實(shí)現(xiàn)游戲功能時(shí)發(fā)現(xiàn),每次調(diào)用disPlay 函數(shù)時(shí)都進(jìn)行清屏操作,屏幕的閃動(dòng)幅度非常大,眼睛很容易疲勞, 第一次改進(jìn)后, 去除了清屏操作,而采用覆蓋式的輸出 , 界面趨向與穩(wěn)定,但是,在進(jìn)行高頻率按鍵時(shí),仍然可以發(fā)現(xiàn)有較小的閃動(dòng),發(fā)現(xiàn)迷宮地圖是不變的,只要重畫改變部分就可以了,再次改進(jìn)后,游戲時(shí)已經(jīng)沒(méi)有閃屏現(xiàn)象出現(xiàn).代碼中的主要算法 : Make_Maze的時(shí)間復(fù)雜度為 O( n * logn ), MazePath 的時(shí)間復(fù)雜度為O( n * m ).7. 經(jīng)驗(yàn)體會(huì): 使用模塊化操作易于代碼的調(diào)試和修改,但是在解決這些問(wèn)題的過(guò)程中,鞏固和加深了我們對(duì)已學(xué)知識(shí)的理解,對(duì)團(tuán)隊(duì)合作有了一個(gè)比較基礎(chǔ)的認(rèn)識(shí),為以后的工作實(shí)踐打下了基礎(chǔ). DOS 操作系統(tǒng), . , 即顯示文本方式的用戶界面:操作提示信息操作命令清單鍵入選擇3. 進(jìn)入”建立自定義迷宮” 命令后, 根據(jù)提示輸入 迷宮的行和列,回車后即可得到”迷宮建立完成”的提示信息.數(shù)據(jù)不合要求,如( 0 , 0 ),則會(huì)提示: 本程序設(shè)置的數(shù)據(jù)范圍為行列 均在 1 – 49 之間.4. 進(jìn)入 “輸出迷宮路徑” 命令后, 程序 立即會(huì)顯示先前生成迷宮的可通路徑,如果迷宮還未生成,則會(huì)提示用戶”迷宮未生成”.5. 進(jìn)入 “試玩當(dāng)前迷宮” 命令后, 用戶只需控制方向鍵就可移動(dòng)小人玩此游戲, 游戲中途可按 ‘ESC’建 ,會(huì)輸出用戶的游戲時(shí)間和所走步數(shù).此為出口6. 輸入 “0” 即可退出此演示程序.六. 測(cè)試結(jié)果1. 根據(jù)提示輸入4,10. 生成迷宮如下 :1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 1 1 0 1 1 1 0 1 1 0 1 0 0 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 0 1 0 1 0 0 0 1 1 0 1 1 1 0 1 0 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 1 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1求解后的路徑如下:2. 輸入第二組測(cè)試數(shù)據(jù) 7,8:求解后路徑如下 :七. 附錄 程序清單:XXV
點(diǎn)擊復(fù)制文檔內(nèi)容
語(yǔ)文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1