编写一个控制台程序,要求定义一个行数和列数相等的二维数组,并采用嵌套循环与随机生成数(每个数在1~100间)的方法,执行数组初始化(赋初值),输出原始二维数组。接下来分别求出数组两条对角线上的元素之和并输出结果。
时间: 2023-11-28 07:48:49 浏览: 49
以下是控制台程序的代码:
```csharp
using System;
class Program
{
static void Main(string[] args)
{
const int size = 5; // 定义二维数组大小为 5x5
int[,] array = new int[size, size]; // 声明并初始化二维数组
// 随机生成数组元素
Random random = new Random();
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
array[i, j] = random.Next(1, 101);
}
}
// 输出原始二维数组
Console.WriteLine("原始二维数组:");
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
Console.Write($"{array[i, j],-4}"); // 输出每个元素,左对齐,占4个字符宽度
}
Console.WriteLine(); // 换行
}
// 求两条对角线上的元素之和
int sum1 = 0, sum2 = 0;
for (int i = 0; i < size; i++)
{
sum1 += array[i, i]; // 主对角线上的元素
sum2 += array[i, size - i - 1]; // 副对角线上的元素
}
// 输出结果
Console.WriteLine($"主对角线上的元素之和为 {sum1}");
Console.WriteLine($"副对角线上的元素之和为 {sum2}");
Console.ReadKey();
}
}
```
程序输出示例:
```
原始二维数组:
27 79 60 42 75
40 20 16 80 12
77 56 47 29 64
57 23 36 12 63
74 68 58 86 77
主对角线上的元素之和为 234
副对角线上的元素之和为 223
```
阅读全文