我可以使用以下代码获得输出。有人可以检查一下并提出更好的方法吗?
static void Main()
{
int[,] matrix1 = {
{ 12,23,22},
{ 14,5,12},
{ 70,80,10 }
};
int sumofleftdiagonals = 0;
for (int i = 0; i < matrix1.GetLength(0); i++)
{
for (int j = 0; j < matrix1.GetLength(0); j++)
{
if (i+j==matrix1.GetLength(0)-1)
{
sumofleftdiagonals += matrix1[i, j];
}
}
}
Console.WriteLine("Sum of Left diagonal Elements is : {0}", sumofleftdiagonals);
}enter code here
答案 0 :(得分:1)
您可以通过以下单个for
循环来优化代码。
int length = matrix1.GetLength(0) - 1;
for (int i = 0; i <= length; i++)
{
sumofleftdiagonals += matrix1[i, length - i];
}