给定一个矩阵,我们需要打印矩阵的边界元素并显示它们的总和。
示例
参考下面给出的矩阵 -
给定矩阵
1 2 3
4 5 6
7 8 9
边界矩阵
1 2 3
4 6
7 8 9
边界元素之和:1 + 2 + 3 + 4 + 6 + 7 + 8 + 9 = 40
求边界矩阵之和的逻辑如下如下 -
for(i = 0; i<m; i++){
for(j = 0; j<n; j++){
if (i == 0 || j == 0 || i == n – 1 || j == n – 1){
printf("%d ", mat[i][j]);
sum = sum + mat[i][j];
}
else
printf(" ");
}
printf("<p>");
}</p>
程序
以下是用于打印矩阵边界元素之和的C程序 -
#include<stdio.h>
#include<limits.h>
int main(){
int m, n, sum = 0;
printf("<p>Enter the order of the matrix : ");
scanf("%d %d",&m,&n);
int i, j;
int mat[m][n];
printf("</p><p>Input the matrix elements</p><p>");
for(i = 0; i<m; i++){
for(j = 0; j<n; j++)
scanf("%d",&mat[i][j]);
}
printf("</p><p>Boundary Matrix</p><p>");
for(i = 0; i<m; i++){
for(j = 0; j<n; j++){
if (i == 0 || j == 0 || i == n – 1 || j == n – 1){
printf("%d ", mat[i][j]);
sum = sum + mat[i][j];
}
else
printf(" ");
}
printf("</p><p>");
}
printf("</p><p>Sum of boundary is %d", sum);
}</p>
输出
当执行上述程序时,会产生以下结果 -
Enter the order of the matrix : 3 3
Input the matrix elements :
1 2 3
4 5 6
7 8 9
Boundary Matrix :
1 2 3
4 6
7 8 9
Sum of boundary is 40