猿问

求大神解答,谢谢。为什么没有这句话就结果显示20,而且为什么要加这句话,又为什么加在这里

#include <stdio.h>

void main(){

int num[3][3]={{1,2,3},{4,5,6},{7,8,9}};

int i,j;

int sum=0;

for (i=0;i<3;i++){

for(j=0;j<3;j++){

if( i%2==0&&j%2==0){

sum+=num[i][j];

}

}

}

sum+=num[1][1];//为什么去掉这句话就变成20了?

printf("对角线之和为%d\n",sum);

return 0;

}


慕雪9105313
浏览 643回答 3
3回答

三夜蟲

前两个嵌套的for循环其实计算了num中i, j下标均为偶数的数字的总和,也就是四个角数字1, 3, 7, 9的总和,自然就是20。sum += num[1][1]在此基础上加上了中间的5,才得到对角线五个数的和。
随时随地看视频慕课网APP
我要回答