设为首页 加入收藏

TOP

扫雷游戏(纯C实现)(二)
2014-11-23 21:45:53 来源: 作者: 【 】 浏览:18
Tags:扫雷 游戏 实现

<1>:返回周围地雷个数的函数
函数原型: int round_num_mines(int i,int j);

原函数见:html">http://www.2cto.com/kf/201104/87210.html

   
优化后的

算法函数接口:
1 .返回周围地雷个数的函数
/* ************************************************************
返回周围地雷个数的函数
函数原型: int round_num_mines(int i,int j);
参 数: int i, int j为当前的坐标
返回值类型: int 返回该坐标处周围的地雷数
返回值情况:(1)返回1-8代表周围有1-8个地雷;
(2)返回0代表周围没有地雷;
(3)返回*代表此坐标时地雷;
*********************************************************
*/
//////////////////////////////////////////////////////
//
// 就是搞不懂为什么下面两个函数不
会出现数组越界情况
//
//////////////////////////////////////////////////////
char round_num_mines( int i, int j)
{
if (map[i][j] == * )
{
return * ;
}

int k = 0 ;
if (map[i + 1 ][j] == * ) k ++ ;
if (map[i + 1 ][j - 1 ] == * ) k ++ ;
if (map[i + 1 ][j + 1 ] == * ) k ++ ;
if (map[i][j + 1 ] == * ) k ++ ;
if (map[i - 1 ][j] == * ) k ++ ;
if (map[i - 1 ][j + 1 ] == * ) k ++ ;
if (map[i][j - 1 ] == * ) k ++ ;
if (map[i - 1 ][j - 1 ] == * ) k ++ ;
return k;
}
*/
// 改进后的(书上的)代码:
(改进算法)
(
1 ).首先定义一个二维数组:
int
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇扫雷游戏(纯C实现)(一) 下一篇[互联网面试笔试汇总C/C++-6] 迅雷

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: