zoukankan      html  css  js  c++  java
  • 扫雷题解

    #include <iostream>

    #include <cstdio>

    using namespace std;

    char a[110][110];  //根据雷区设定的数组大小

    void fun(int n,int m)

    {

        for(int i=1;i<=n;i++)   //以字符串的形式往二维数组里填充内容

            scanf("%s",a[i]+1); //a[i+1]空出左边的一列

        //右边和下边只需要把数组设置大,就会空出来了

        int dx[8]={-1,-1,-1,0,0,1,1,1};//方向数组,实现数据和控制分离

        int dy[8]={-1,0,1,-1,1,-1,0,1};

        for(int i=1;i<=n;i++)

        {

            for(int j=1;j<=m;j++)

            {

                if(a[i][j]=='*')

                    cout<<'*';

                else

                {

                    int sum=0;

                    for(int o=0;o<8;o++)    //找周围雷的个数

                        if(a[i+dx[o]][j+dy[o]]=='*')

                            sum++;

                    cout<<sum;

                }

            }

            cout<<endl;

        }

    }

    int main()

    {

        int n,m;

        cin>>n>>m;

        fun(n,m);

        return 0;

    }

    备注:对于二维数组:a[0][0]不是地址,&a[0][0]才是地址,但a[0]是a[0][0]的地址,a[0]+1是a[0][1]的地址.

    所以在输入的时候,若是输入a[i][j],就必须用取地址符。

    这篇文章,是又一个故事的结束...
    lazy's story is continuing.
  • 相关阅读:
    Maven2-profile多环境配置
    Maven-setting.xml详解
    Maven-通过命令操作maven项目
    Maven-eclipse运行maven命令
    Eclipse-导入maven项目
    Maven-搭建maven web项目
    Maven-搭建普通maven项目
    Maven-pom.xml详解
    Maven-生命周期
    Maven-常用命令
  • 原文地址:https://www.cnblogs.com/Hello-world-hello-lazy/p/13490751.html
Copyright © 2011-2022 走看看