题解(内有超级详细的题解)
2026-10-05 21:06:43
发布于:浙江
5阅读
0回复
0点赞
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________防偷窥线
#include <bits/stdc++.h>
//万能头文件
using namespace std;
//标准命名空间std
char a[105][105];
//定义一个二维的char(字符)型变量a,用于记录地图
int coin(int n,int m)
//int型函数
{
int sum=0;
//定义一个int(整数)型变量sum,用来记录3x3内 “ * ” (地雷)的个数,并且sum=0
for(int i=n-1;i<=n+1;i++)
{
for(int j=m-1;j<=m+1;j++)
//遍历一个3x3的方形
{
if(a[i][j]=='*')
//如果3x3的方形内有 “ * ” (地雷)
{
sum+=1;
//用来记录3x3内 “ * ” (地雷)个数的sum去加1
}
}
}
return sum;
//返回值:变量sum
}
//函数结束
int main()
//主函数
{
int n,m;
//定义两个int(整数)型变量n和m,用来记录整块地图的长和宽
cin>>n>>m;
//输入n和m
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
//遍历整个地图
{
cin>>a[i][j];
//输入整个地图
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
//再次遍历整个地图
{
if(a[i][j]=='?')
//如果有地方是 “ ? ”
{
cout<<coin(i,j);
//在那个地方输出前面算出来的sum
}
else
//否则
{
cout<<"*";
//输出 “ * ” (地雷)
}
}
cout<<'\n';
//换行
}
return 0;
//返回值:0
}
//主函数结束
点个赞吧~
制作十分不易
花了我30分钟呢!
感谢~
好人一生平安
再次致谢!
全部评论 4
16小时前 来自 浙江
0111
16小时前 来自 浙江
0111
16小时前 来自 浙江
0111
16小时前 来自 浙江
0







有帮助,赞一个