using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication13
{
class Program
{
static void Main(string[] args)
{
int[,] a1 = new int[4, 4] { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 }, { 13, 14, 15, 16 } };
//01
Console.WriteLine("原始矩阵:");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
Console.Write("{0,8}", a1[i, j]);
}
Console.WriteLine();
}
//02
Console.WriteLine("上三角矩阵:");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
if (i == 0)
{
Console.Write("{0,-8}", a1[i, j]);
}
else
{
if (i >= 1 && j >= i)
{
Console.Write("{0,8}", a1[i, j]);
}
else
{
Console.Write("{0,8: }", a1[i, j]);
}
}
}
Console.WriteLine();
}
//03
Console.WriteLine("下三角矩阵:");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
if (j <= i)
{
Console.Write("{0,8}", a1[i, j]);
}
else
{
Console.Write("{0,8: }", a1[i, j]);
}
}
Console.WriteLine();
}
//04
Console.WriteLine("矩阵两对角线之和:");
int sr = 0;
int sl = 0;
for (int i = 0, j = 3; i < 4; i++)
{
sr = sr + a1[i, j];
j--;
sl = sl + a1[i, i];
}
Console.WriteLine("{0,8}", (sr + sl));
//05
Console.WriteLine("矩阵A转换:");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
a1[i, j] = a1[j, i];
Console.Write("{0,8}", a1[i, j]);
}
Console.WriteLine();
}
Console.ReadKey();
}
}
}