多题目

扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称为地雷格),其他格子不含地雷(称为非地雷格)。玩家翻开一个非地雷格时,该格子中将会出现一个数字,提示周围格子中有多少个是地雷格。玩家的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。请将程序补充完整。现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下这8个方向上与之直接相邻的格子。

输入格式:

第1行是用一个空格隔开的两个整数n和m,分别表示雷区的行数和列数。接下来n行,每行 m个字符,描述了雷区中的地雷分布情况。字符*表示相应格子是地雷格,字符?表示相应格子是非地雷格。相邻字符之间无分隔符。

输出格式:

输出文件包含n行,每行m个字符,描述整个雷区。用*表示地雷格,用周围的地雷个数表示非地雷格。相邻字符之间无分隔符。

输入样例:

3 3

*??

2

?*?

输出样例:

*10

221

1*1

第1题 单选

①处应填()。

A.

 g[i][j] !='?'

B.

g[i][j]!='\0'

C.

g[i][j] !='*'

D.

g[i][j] =='*'

第2题 单选

②处应填()

A.

cnt++

B.

cnt =0

C.

cnt =0

D.

++cnt = 0

第3题 单选

③处应填()。

A.

k<8

B.

k < m

C.

k<n

D.

k <min(m,n)

第4题 单选

④处应填()。

A.

g[i + dy[k]][j + dx[k]] == '*'

B.

 g[i - dx[k]][j - dy[k]] =='*'

C.

g[i + dx[k]][j + dy[k]] == '*'

D.

g[i - dy[k]][j - dx[k]] =='*'

第5题 单选

⑤处应填()


A.

j != m

B.

j != m-1

C.

i != n

D.

i != n-1

发表评论

请 登录 后再回复