c#中 定义一个3×3矩阵,赋100以内的随机值后分别求两条对角线之和。 要求:显示随机生成的矩阵,显示两条对角线之和。
时间: 2024-09-26 10:17:22 浏览: 50
在C#中,我们可以使用`System.Random`类来生成随机整数,并创建一个3x3的二维数组(矩阵)来存储这些值。然后计算并显示两条对角线的总和。以下是完整的代码示例:
```csharp
using System;
using System.Linq;
class MatrixDemo
{
static void Main()
{
int[,] matrix = new int[3, 3];
Random rand = new Random();
Console.WriteLine("Random 3x3 Matrix:");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
matrix[i, j] = rand.Next(1, 101); // 生成1到100之间的随机整数
Console.Write(matrix[i, j] + " ");
}
Console.WriteLine();
}
int mainDiagonalSum = GetMainDiagonalSum(matrix);
int antiDiagonalSum = GetAntiDiagonalSum(matrix);
Console.WriteLine("\nSum of main diagonal: " + mainDiagonalSum);
Console.WriteLine("Sum of anti-diagonal: " + antiDiagonalSum);
}
static int GetMainDiagonalSum(int[,] matrix)
{
return matrix.Sum(row => row[0] + row[1] + row[2]);
}
static int GetAntiDiagonalSum(int[,] matrix)
{
return matrix.Sum((row, col) => row[col]);
}
}
```
这段代码首先初始化一个3x3的矩阵,并填充随机整数。然后,它定义两个辅助函数`GetMainDiagonalSum`和`GetAntiDiagonalSum`分别计算主对角线和副对角线的和。最后,打印出这两条对角线的和。
阅读全文