0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0 }; void print_maze() { int i, j; for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) { if (maze[i][j]) printf("%c", 219); else printf(" "); } printf("\n"); } } int gomaze(HERO* h) { HERO t = *h; int i; for (i = 0; i < 2; t = *h) { print_hero(h, 1); sleep(1); go(&t); if (t.x >= 0 && t.x < 10 && t.y >= 0 && t.y < 10 && !maze[t.y][t.x]) { print_hero(h, 0); go(h);/*前方可走则向前走*/ if (h->x == 9 && h->y == 9) return 1; goleft(&t); if (h->x == 0 && h->y == 0) i++; if (t.x >= 0 && t.x < 10 && t.y >= 0 && t.y < 10 && !maze[t.y][t.x]) turnleft(h);/*左方无墙向左转*/ } else turnright(h);/*前方不可走向右转*/ } return 0; } main() { HERO Tom;/*有个英雄叫Tom*/ set_hero(&Tom, 0, 0, 0);/*放在(0,0)面朝北*/ clrscr(); print_maze(); gomaze(&Tom);/*Tom走迷宫*/ } |
閺€鎯版閹存劕濮�閺屻儳婀呴弨鎯版>>
正在阅读:C++数据结构学习:递归(3.1)C++数据结构学习:递归(3.1)
2004-02-14 09:34
出处:PConline
责任编辑:linjixiong
键盘也能翻页,试试“← →”键