#include <stdio.h>
int main()
{
int arr[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 += arr[i][j];
}
}
}
sum += arr[1][1];
printf("对角线元素之和是:%d\n",sum);
return 0;
}
1%2 !=0? if语句中不能判断么, 为什么最后还要加一个sum += arr[1][1];
你这个判断条件只能把arr[0][0]和arr[2][2]判断出来相加,但是对角线上还有一个arr[1][1]没有加,这道题求的是对角线之和,实际上对角线的判断条件并不应该这样的,你可以思考一下