C# 在for循环中创建具有门的房间

C# 在for循环中创建具有门的房间,c#,for-loop,console-application,C#,For Loop,Console Application,我是新来的。 没关系? 我的问题很简单,我用这个简单的for生成了墙,但我只需要生成一个空白空间,就像它是一扇门一样。 我会在下面留下我的代码 类程序 { 静态void Main(字符串[]参数) { 字符串[,]m=新字符串[10,10]; int row=m.GetLength(0); int colunm=m.GetLength(1); 对于(int i=0;i

我是新来的。 没关系? 我的问题很简单,我用这个简单的for生成了墙,但我只需要生成一个空白空间,就像它是一扇门一样。 我会在下面留下我的代码

类程序
{
静态void Main(字符串[]参数)
{
字符串[,]m=新字符串[10,10];
int row=m.GetLength(0);
int colunm=m.GetLength(1);
对于(int i=0;i
使用当前代码的一种方法是只设置
m[9,4]=”在用-s填充数组的循环和打印边框的循环之间。(但奇怪的是,你填充了每个正方形的数组,却没有全部打印出来:你的意图是什么?)或者你可以在门正方形的for循环中做一个例外。我打算将来确定对象的方向,并将其分为多个类,其中一个类负责生成“地图”的形状并将其存储在矩阵中,另一个将只打印存储在矩阵中的字符。我解决了这个问题,谢谢大家,我将把解决方案作为一个版本。请将解决方案作为“答案”发布;不是编辑问题。
class Program
    {
        static void Main(string[] args)
        {

            string[,] m = new string[10, 10];

            int row = m.GetLength(0);
            int colunm = m.GetLength(1);


            for (int i = 0; i < row; i++)
            {
                for (int k = 0; k < colunm; k++)
                {
                    m[i, k] = "-".ToString();

                }
            }


            //    Console.Write(m[1, 1]);

            for (int i = 0; i < row; i++)
            {

                for (int k = 0; k < colunm; k++)
                {
                    if (i == 0 || i == row - 1 || k == 0 || k == colunm - 1)
                        Console.Write(m[i,k] + " ");
                    else
                        Console.Write("  ");

                }
                Console.WriteLine();
            }
            Console.ReadLine();
        }

    }