Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C二维数组求和并检查值以返回真或假布尔值_C#_Multidimensional Array - Fatal编程技术网

C# C二维数组求和并检查值以返回真或假布尔值

C# C二维数组求和并检查值以返回真或假布尔值,c#,multidimensional-array,C#,Multidimensional Array,我试图构建一个二维数组大小,用户输入该数组大小,然后按数字顺序用int填充,然后对所有列、行和对角线求和,看看它们是否相同,此时布尔值是真还是假?正在练习求职面试,但这一次却把我难住了!谢谢 int[,] n; Console.WriteLine("Please enter an integer: "); int number = Convert.ToInt32(Console.ReadLine()); int row = number; int column = number;

我试图构建一个二维数组大小,用户输入该数组大小,然后按数字顺序用int填充,然后对所有列、行和对角线求和,看看它们是否相同,此时布尔值是真还是假?正在练习求职面试,但这一次却把我难住了!谢谢

int[,] n;

Console.WriteLine("Please enter an integer: ");
int number = Convert.ToInt32(Console.ReadLine());
int row = number;
int column = number;                    
n = new int[row, column];

int i, j;

for (i = 0; i < row - 1; i++)
      {
           for (j = 0; j < column - 1; j++)
           {
               n[i, j] = i + 1;                            
           }

应该是这样的,我不确定是否正确,但你知道了

        var array = new int[10,10];
        int sum = 0;

        // Fill array
        for(int i = 0; i < 10; i++)
            for (int j = 0; j < 10; j++)
                array[i, j] = i + j*10;

        // Sum horizontal
        var sumRows = new int[10];
        for (int i = 0; i < 10; i++)
            for (int j = 0; j < 10; j++)
                sumRows[i] += array[i, j];

        // Sum vertical
        var sumColumns = new int[10];
        for (int i = 0; i < 10; i++)
            for (int j = 0; j < 10; j++)
                sumColumns[j] += array[i, j];

        // Diagonal A
        int diagonalA = 0;
        for (int i = 0; i < 10; i++)
            for (int j = 0; j < 10; j++)
                if (i == j) diagonalA += array[i, j];

        // Diagonal B
        int diagonalB = 0;
        for (int i = 0; i < 10; i++)
            for (int j = 0; j < 10; j++)
                if (10-i-1 == j) diagonalB += array[i, j];

你在这个问题的哪个方面苦苦挣扎?您成功地完成了哪些部分?很抱歉,忘记了代码。那么,您在使用此代码时遇到了哪些问题?我现在不知道如何对行、列和对角线求和?@user3242281您如何尝试对这些行、列和对角线求和?