int sum1 = 0, sum2 = 0, num = 1;//sum1为第一条对角线的和,sum2为第二条对角线的和
int[,] a = new int[6, 6];//定义a为6X6矩阵
for (int i = 0; i < 6; i++)//给6X6矩阵赋值
{
for (int j = 0; j < 6; j++)
{
a[i, j] = num;
num++;
}
}
for (int i = 0; i < 6; i++)//计算第一条对角线的和
{
sum1 += a[i, i];
}
for (int i = 0; i < 6; i++)//计算第二条对角线的和
{
sum2 += a[i, 5-i];
}
}
复制代码
作者: 庞登升 时间: 2013-6-29 13:29
int[,] a =new int [6,6] //这样是定义一个二维的数组的方式哈?学习了作者: ゞ灬伊夏風 时间: 2013-6-29 15:22
这是C++的代码:
#include <stdio.h>
#include <malloc.h>
int main( void)
{
int n = 0;
int i = 0;
int j = 0;
int **a;
int sum = 0;
printf("请输入矩阵的维数:\n");
scanf("%d",&n);
a = (int**)malloc(n*sizeof(int*));
for (int i = 0; i < n; ++i)
{
*(a+i) = (int *)malloc(sizeof(int)*n);
}
printf("请依次输入矩阵中的数值:\n");
for ( i = 0; i < n; i ++)
{
for ( j = 0; j < n; j++)
{
scanf("%d",&a[i][j]);
}
}
for ( i = 0; i < n; i++)
{
for ( j = 0; j < n; j++)
{
if ( (i == j) || ((i+j == n-1) && (i != j)))
{
sum += a[i][j];
}
}
}
printf("矩阵两个对角线元素的和为:%d\n",sum);
}作者: 万大述 时间: 2013-7-4 14:53
int sum = 0;
Random random = new Random();//实例化一个随机对象
int[,] sixArray = new int[6, 6];//定义a为6X6矩阵
for (int i = 0; i < 6; i++)//给6X6矩阵赋随机值
{
for (int j = 0; j < 6; j++)
{
sixArray[i, j] = random.Next(1, 100);
}
}
Console.WriteLine("随机产生的6X6矩阵为:");
for (int i = 0; i < 6; i++)//打印6X6矩阵的值
{
for (int j = 0; j < 6; j++)
{
Console.Write(sixArray[i,j]+"\t");
}
Console.WriteLine();
}
for (int i = 0; i < 6; i++)//求两条对角线的和
{
for (int j = 0; j < 6; j++)
{
if (i == j || i + j == 5)
{
sum += sixArray[i, j];
}
}
}
Console.WriteLine();
Console.WriteLine("两对角线和为:{0}",sum);
Console.ReadKey();