正在加载图片...
return(re[ind[0]][ind[1]]):/*取优先符>、=、< /*执行操作运算 float operate(a, sym, b) float a, b: char sym { float re switch(sym) case + re=a+b: break case/: re=a/b break default: printf(error \n"): return(O) return (re) 2、迷宫路径问题 [问题描述]迷宫实验是取自心理学的一个古典实验。在该实验中,把 只老鼠从一个无顶大盒子的门放入,在盒中设置了许多墙,对行进方向形 成了多处阻挡。盒子仅有一个出口,在出口处放一块奶酪,吸引老鼠在迷宫 中寻找道路以到达出口。对同一只老鼠重复进行上述实验,一直到老鼠从入 口到出口,而不走错一步。老鼠经多次实验终于得到他学习走通迷宫的路线 设计一个计算机程序对任意设定的迷宫,求出一条入口到出口的通路,或得 出没有通路的结论。 [基本要求]要求程序输出: (1)、一条通路的二元组(i,j)数据序列,(i,j)表示同路上某一点 的坐标。 (2)、用一种标志(如数字8)在二维数组中标出该条通路,并在屏幕 上输出二维数组。 [实现提示]可以利用一个二维数组maze[i]j表示迷宫,其中1≤i≤ l≤j≤n。数组元素值为1表示该位置是墙壁,不能通行:元素值为0表 示该位置是通路。假定从maze[1][1]出发,出口位于maze[m][n],移动方向 可以是8个方向(东,东南,南,西南,西,西北,北和东北)。一个构造 的迷宫如下页图} return(re[ind[0]][ind[1]]); /*取优先符>、=、< } /*执行操作运算 float operate(a,sym,b) float a,b; char sym; { float re; switch(sym) { case '+':re=a+b;break; case '-':re=a-b;break; case '*':re=a*b;break; case '/':re=a/b;break; default:printf("error\n");return(0); } return(re); } 2、迷宫路径问题 [问题描述] 迷宫实验是取自心理学的一个古典实验。在该实验中,把 一只老鼠从一个无顶大盒子的门放入,在盒中设置了许多墙,对行进方向形 成了多处阻挡。盒子仅有一个出口,在出口处放一块奶酪,吸引老鼠在迷宫 中寻找道路以到达出口。对同一只老鼠重复进行上述实验,一直到老鼠从入 口到出口,而不走错一步。老鼠经多次实验终于得到他学习走通迷宫的路线。 设计一个计算机程序对任意设定的迷宫,求出一条入口到出口的通路,或得 出没有通路的结论。 [基本要求] 要求程序输出: (1)、一条通路的二元组(i,j)数据序列,(i,j)表示同路上某一点 的坐标。 (2)、用一种标志(如数字 8)在二维数组中标出该条通路,并在屏幕 上输出二维数组。 [实现提示] 可以利用一个二维数组 maze[i][j]表示迷宫,其中 1≤i≤ m,1≤j≤n。数组元素值为 1 表示该位置是墙壁,不能通行;元素值为 0 表 示该位置是通路。假定从 maze[1][1]出发,出口位于 maze[m][n],移动方向 可以是 8 个方向(东,东南,南,西南,西,西北,北和东北)。一个构造 的迷宫如下页图:
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有