(1)问题描述 本题目做一个N x M 的扫雷游戏,每个方格包含两种状态:关闭(closed)和打开(opened),初始化时每个方格都是关闭的,一个打开的方格也会包含两种状态:一个数字(clue)和一个雷(bomb)。你可以打开(open)一个方格,如果你打开的是一个bomb,那么就失败;否则就会打开一个数字,该数字是位于[0,8]的一个整数,该数字表示其所有邻居方格(neighboring squares)所包含的雷数,应用该信息可以帮助你扫雷。 具体实现要求的细节: ①能够打开一个方格,一个已打开的方格不能再关闭。 ②能够标记一个方格,标记方格的含义是对该方格有雷的预测(并不表示真的一定有雷),当一个方格标记后该方格不能被打开,只能执行取消标记的操作, 只能在取消后才能打开一个方格。 ③合理分配各个操作的按键,以及各方格各种状态如何合理显示。 (2)课程设计目的 掌握线性结构的应用,并体会如何用计算机程序完成一个有趣的游戏。 (3)基本要求 ①能够给出游戏结果(输、赢、剩余的雷数、用掉的时间按妙计)。 ②游戏界面最好图形化,否则一定要清楚的字符界面。 (4)实现提示 用二维数组表示N x M 区间,要仔细考虑如何初始的布置各个雷以及各个方格的状态及变化。 只能在取消后才能打开一个方格。 ③合理分配各个操作的按键,以及各方格各种状态如何合理显示。 (2)课程设计目的 掌握线性结构的应用,并体会如何用计算机程序完成一个有趣的游戏。 (3)基本要求 ①能够给出游戏结果(输、赢、剩余的雷数、用掉的时间按妙计)。 ②游戏界面最好图形化,否则一定要清楚的字符界面。 (4)实现提示 用二维数组表示N x M 区间,要仔细考虑如何初始的布置各个雷以及各个方格的状态及变化。