1

我有一个二维数组,我需要将第一个对角线数字转换为零。例如,我需要转换以下内容:

[ 1 2 3 ]
[ 5 9 5 ]
[ 3 2 1 ]

对此,意味着对角线1 9 1现在是0 0 0

[ 0 2 3 ]
[ 5 0 5 ]
[ 3 2 0 ]

如何在 C# 中有效地做到这一点?

4

1 回答 1

3

您所做的就是在 X 和 Y 相等时将网格中的点设置为零。(1,1)、(2,2) 等;

int x = 4, y = 5;
int[,] array = new int[x,y]; // assume we initialize this with some values
for (int i = 0; i < x && i < y; i++ ) {
    array[i,i] = 0;
}
于 2009-04-28T17:01:24.160 回答