2D阵列显示不正确

时间:2020-06-23 07:33:05

标签: c# arrays

所以我需要做的是获取这两个随机数组,并从其他监视对象中减去它们,这不是容易的问题。

我的问题是,当我需要显示3x3数组时,它在每行显示一个数字。

这是我的代码。

Random random = new Random();

int[,] newarray = new int[3, 3];
int[,] newarray1 = new int[3, 3];
int[,] newarray2 = new int[3, 3];

for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 3; j++)
    {
        newarray[i, j] = random.Next(-10, 10);
        Console.WriteLine(newarray[i,j] + " ");
    }
}

for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 3; j++)
    {
        newarray1[i, j] = random.Next(-10, 10);
        Console.WriteLine(newarray1[i, j] + " ");
    }
}

for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 3; j++)
    {
        newarray2[i, j] = newarray[i, j] - newarray1[i, j];
        Console.WriteLine(newarray2[i, j] + " ");
    }
}




Console.ReadKey();

输出:eachlineisanewnumber

enter image description here

writeline更改为只写即可,而不是单独一行。

3 个答案:

答案 0 :(得分:1)

您快到了,只需使用Write进行追加,然后使用WriteLine换行

for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 3; j++)
    {
        newarray[i, j] = random.Next(-10, 10);
        Console.Write(newarray[i,j] + " ");
    }
    Console.WriteLine();
}

Console.Write Method

将指定值或多个值的文本表示形式写入 标准输出流。

Console.WriteLine Method

将指定的数据和当前的行终止符写入到 标准输出流。

答案 1 :(得分:0)

您可以使用这种简单的方法使用for循环以矩阵形式打印。

int[,] arr = new int[3, 3] { { 1, 2, 3 }, { 4,5,6}, { 7,8,9}};

int rows = arr.GetLength(0);
int columns = arr.GetLength(1);

for (int i = 0; i < rows; i++)
{
    for (int j = 0; j < columns; j++)
    {
        Console.Write(string.Format("{0} ", arr[i, j]));
    }
    Console.Write(Environment.NewLine);
}

答案 2 :(得分:0)

将每个数组打印为矩阵:

for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 3; j++)
    {
        Console.Write(arr[i, j] + " ");
    }
    Console.Write("\n");
}