将2D阵列打印成“正方形”

时间:2014-12-16 19:45:53

标签: c# arrays random console

我正在尝试学习如何使用2D数组,而我似乎无法理解如何正确打印它们。我想在" square"中打印它们。像5x5,但我得到的只是一行。我已经尝试了WriteLineWrite并更改了循环中的一些变量,但我得到的错误与否是我想要的结果。该代码应打印出5x5,每列中有15个数字的随机序列。我从中得到了正确的数字,它只是布局错误。

static void Main(string[] args)
{
    Random rnd = new Random();
    int[,] bricka = new int[5, 5];
    int num = 0;
    int num1 = 1;

    for (int i = 0; i < bricka.GetLength(1); i++)
    {
        num += 16;
        for (int j = 0; j < bricka.GetLength(0); j++)
        {
            bricka[j, i] = rnd.Next(num1, num);
        }
        num1 += 16;
    }

    for (int i = 0; i < bricka.GetLength(0); i++)
    {
        for (int j = 0; j < bricka.GetLength(1); j++)
        {
            Console.Write(bricka[i, j]+ " " );
        }
    }
    Console.ReadKey();
}

这是我的版画,我想有12下的12和12下的14等等。 http://i.imgur.com/tfyRxf1.png

1 个答案:

答案 0 :(得分:3)

您需要在每行之后调用WriteLine(),以便每行打印在一个单独的行上:

for (int i = 0; i < bricka.GetLength(0); i++)
{
    for (int j = 0; j < bricka.GetLength(1); j++)
    {
        Console.Write(bricka[i, j]+ " " );
    }
    Console.WriteLine();
}

无论如何,那将是一种做法。