题解 | 扫雷

扫雷

https://www.nowcoder.com/practice/d5f277427d9a4cd3ae60ea6c276dddfd

#include <stdio.h>        //标准输入输出函数头文件
int main()
{
    int n,m;        //定义整型变量,保存用户输入的信息
    //输入
    scanf("%d %d",&n,&m);
    //这里多定义两行两列是为了不需要单独考虑边界的埋雷情况
    char a[1002][1002];     //定义二维数组保存目标矩阵
    //输入
    for(int i=0;i<=n+1;i++)
    {
        for(int j=0;j<=m+1;j++)
        {
            if(i==0||i==n+1||j==0||j==m+1)
            {
                a[i][j]='.';
            }
            else 
            {
                scanf(" %c",&a[i][j]);
            }
        }
    }
    
    //利用for循环寻找埋雷个数
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            int sum=0;        //定义整型变量,保存无雷坐标周围的埋雷数量
            if(a[i][j]=='.')
            {
                if(a[i-1][j-1]=='*')
                {
                    sum++;
                }
                if(a[i-1][j]=='*')
                {
                    sum++;
                }
                if(a[i-1][j+1]=='*')
                {
                    sum++;
                }
                if(a[i][j-1]=='*')
                {
                    sum++;
                }
                if(a[i][j]=='*')
                {
                    sum++;
                }
                if(a[i][j+1]=='*')
                {
                    sum++;
                }
                if(a[i+1][j-1]=='*')
                {
                    sum++;
                }
                if(a[i+1][j]=='*')
                {
                    sum++;
                }
                if(a[i+1][j+1]=='*')
                {
                    sum++;
                }
                //最后将整型转换为字符型即加上0的ASCII值
                a[i][j]=sum+'0';
            }
        }
    }
    //输出
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            printf("%c",a[i][j]);
        }
        //换行
        printf("\n");
    }
    return 0;
}

全部评论

相关推荐

03-16 11:07
南开大学 Java
牛马人的牛马人生:快手卡实习经历的
点赞 评论 收藏
分享
哈哈哈,你是老六:百度去年裁员分评不好,赶紧弄点红包
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务