1樓:郭森
#include
#include
#include
#include
#include
#define x1 (a-120)/20#define y1 (b-40)/20#define up 72
#define down 80
#define left 75
#define right 77
#define enter 13
#define esc 27
int d[21][21]=;
int a=120,b=40;
void init()
void drawlist()
}void drawfirst()
void clearold(int m,int n)void drawnew(int m,int n)void filllist()
else d[i][j]=0;
}d[0][0]=0;d[19][19]=0;
setfillstyle(1,black);
floodfill(121,41,red);
floodfill(121+19*20,41+19*20,red);
}void getway()
else;
break;}
case down:else;
break; }
case right : else;
break; }
case left : else;
break;}
case esc : exit();break;
default : break;
if(a==500&&b==420)break;
}/*switch finish*/
}/*for finish*/
}/*while finish*/
}void main()
2樓:匿名使用者
汗,這裡根本沒法畫出框框來,怎麼畫流程圖。
資料結構與演算法作業:用c語言程式設計隨機生成乙個迷宮,然後找出從入口到出口的路線圖。急!
3樓:風精靈林
幾點說明:
1.本程式是動態的,執行後自動尋找迷宮出路
2.本程式對c語言剛學完的有很大的意義.
3.四周是牆,座標(1,1)是入口,右下腳是出口
宣告:本程式用vc除錯是無法通過的需要修改
本程式除錯工具是tc.....................
#include "graphics.h"
#include "dos.h"
#include "stdlib.h"
#include "process.h"
#define max_col 14/*定義迷宮大小*/
#define max_row 14
typedef struct
offsets;
mapture(int i,int j,int k);/*標記迷宮,(i,j)標記為k模式*/
initmaze();/*初始化迷宮陣列*/
findmaze(int i,int j);/*找到了(i,j)可走,標記*/
mapmaze();/*畫出原始迷宮*/
int findpath(int row,int col);/*遞迴函式,找出迷宮路徑*/
mapbar();/*畫出方格*/
initgrap();/*初始化vga*/
print();/*迷宮走完後,輸出是否成功 */
int startx=50,starty=50;/*畫圖的螢幕座標*/
int maze[max_row][max_col];
offsets move[8]=,,,,,,,}; /*8個方向尋找*/
initmaze()/*初始化迷宮陣列 */
for(i=0;i randomize(); for(i=1;i for(j=1;j }findmaze(int i,int j)/*找到 (i,j)可走*/ returnmaze(int i,int j)/*找到(i,j)可走 ,但下一步無路走則標記*/ print(int i)/*迷宮走完後,輸出是否成功*/ int findpath(int row,int col)/*用遞迴法找迷宮*/ else findpath(next_row,next_col);/*沒有到出口繼續遞迴*/ maze[next_row][next_col]=3; returnmaze(next_row,next_col); }direct++; }return(row); }tc除錯良好 4樓:電子產品第一線 #include #include #include #include /* define the size of maze */ #define max_col 6 #define max_row 6 #define true 1 #define false 0 #define is_usable(a, b) (a >= 0 && a < max_row) && (b >= 0 && b < max_col) && maze[a][b] && (!my_maze[a][b]) static int maze[max_row][max_col]; static int target_maze[max_row][max_col]; static void init_maze(); static int move_to(int i, int j, int (*maze)[max_col], int count); static void print_maze(int (*maze)[max_col]); static void init_maze() maze[1][0] = 1; /* start point */ maze[max_row - 1][max_col - 2] = 1; /* end point */ }static int move_to(int _i,int _j, int (*in_maze)[max_col], int count) } else }my_maze[_i][_j] = count; /* reach the end point */ if (_i == max_row - 1 && _j == max_col - 2) return true; }if (is_usable(_i - 1, _j)) if (is_usable(_i + 1, _j)) if (is_usable(_i, _j - 1)) if (is_usable(_i, _j + 1)) return false; }static void print_maze(int (*maze)[max_col]) printf("\n");}} int main() else }} vc60下正常執行 include int main void printf num d n num return 0 include int main 這樣是不更簡潔呢?物聯網校企聯盟技術部 void main include void main main printf d sum main 不懂再問,給分哦,親。i... 第一題 include include include include void fun char str,char c intmain void fun char str,char c 第三題 include include define n 4 typedef structshu intmain... 這就是運bai算符號的優先順序的問du題。c語言中,非零為真zhi,k 2,所以循dao環執行2次。第1次 專 屬 s m k m,在變數左側,所以先計算m m 1 4,k 在變數右側,所以先使用k 2進行m k 2的計算,然後再k k 1 1 最後計算s s 2 10 執行第1次迴圈後 m 4,k...用c語言編寫程式,得出1 ,用C語言編寫程式,得出1 1 2 1 3 1 100的值
用C語言編寫程式,用C語言編寫三個程式
C語言程式設計,編寫程式,用C語言。