c 语言数组主对角线和 次对角线怎么求和

如题所述

#include <stdio.h>
#include <conio.h>

#define LEN 50 /*数组长度*/

int main (void) {
int matrix[LEN][LEN] = {{1,3,2},{4,7,5},{9,6,8}}; 
int row= 3, col= 3;
int mainDiagonalSum, diagonalSum; /*主、次对角线之和*/
int i, j;

for (i=0; i<row; i++) {
for (j=0; j<col; j++) {
if (i==j) /*主对角线*/
mainDiagonalSum += matrix[i][j];
if (i+j==row-1) /*次对角线*/
diagonalSum += matrix[i][j];
}
}
for (i=0; i<row; i++) {
for (j=0; j<col; j++)
printf ("%d\t", matrix[i][j]);
putchar ('\n');
}
printf ("主对角线之和:\t%d\n", mainDiagonalSum);
printf ("次对角线之和:\t%d\n", diagonalSum);
   
    putchar ('\n');
    getch ();
    return 0;
}

运行结果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-28
两for循环嵌套就可以了。