毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

迷宫问题-数据结构课程设计 第2页

更新时间:2007-10-20:  来源:毕业论文

 

void Ouput(const char b[M][M])
{
int i, j;

printf("迷宫的形状为:\n");
for (i = 0; i < M; i++)
{
for (j = 0; j < M; j++)
{
printf("%c",b[i][j]);
}
printf("\n");
}
}
int FindWay(char maze[M][M])
{
ElemType  e;
int constep = 1;
int x = 1, y = 1;
SqStack S;

InitStack(&S);
do
{
if (maze[x][y] == ' ')//当第3次时 maze[x][y]!=' ' 照样通不过
{
maze[x][y] = '1';
e.x = x;
e.y = y;
e.dir = 1;
Push(&S,e);
if (x == M-2 && y == M-2)
{
printf("存在出口\n");
return 1;
}
NextStep(&x,&y,1);
constep++;
}

else
{
Pop(&S,&e);
while (e.dir == 4 && !StackEmpty(&S))
{
maze[e.x][e.y] = '0';
Pop(&S,&e);
}

{

if (e.dir < 4)
{
e.dir++;
Push(&S,e);
x = e.x;
y = e.y;
NextStep(&x, &y, e.dir);
}
else
{
printf("没有出口\n");
return 0;
}
}
}
}while(S.top!=S.base);

return 0;
}

int NextStep(int *x, int *y, int dir)
{

switch(dir)
{
case 1:
(*y)++;
break;
case 2:
(*x)++;
break;
case 3:
(*y)--;
break;
case 4:
(*x)--;
break;
default:
break;
}
return 0;
}

int main(void)
{
char a[M][M];

Input(a);
Ouput(a);
FindWay(a);
Ouput(a);

system("pause");
return 0;
}

上一页  [1] [2] 

迷宫问题-数据结构课程设计 第2页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。