求两个矩阵的和,然后求出矩阵对角线上元素之和(C语言)

两个矩阵求和:首先两个矩阵的行数和列数应一致,然后将相同位置上的两个数相加保存到其中一个数组中,再输出。

矩阵对角线上的元素之和:对角线上元素的行号和列号的具有的特征:1、行号等于列号;2、行号与列号之和为总行数。

即:

if (i != SIZE - 1 - i)
			sum += array1[i][i] + array1[i][SIZE - 1 - i];
		else
			sum += array1[i][i];

完整代码如下:

#include<stdio.h>
#include<stdlib.h>
#define SIZE 3
int main()
{
	int array1[SIZE][SIZE] = { 1,2,3,4,5,6,7,8,9 };
	int array2[SIZE][SIZE] = { 10,11,12,13,14,15,16,17,18 };
	int i = 0;
	int j = 0;
	int sum = 0;
	for (i = 0; i < SIZE; ++i)
	{
		for (j = 0; j < SIZE; j++)
		{
			array1[i][j] += array2[i][j];
			printf("%-6d", array1[i][j]);
		}
		printf("\n");
	}
	for (i = 0; i < SIZE; ++i)
	{
		if (i != SIZE - 1 - i)
			sum += array1[i][i] + array1[i][SIZE - 1 - i];
		else
			sum += array1[i][i];
	}
	printf("对角线之和为:%d\n", sum);
	system("pause");
}

输出结果为:
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章