问答详情
源自:6-11 多维数组的遍历

在我这个程序中: if((i==j)||(i+j==2)),这样写的话,中间那个数会不会重复加?

  

#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==j)||(i+j==2))

       sum+=arr[i][j];

       }

       

       

     

    }


    printf("对角线元素之和是:%d\n",sum);

    return 0;    

}


提问者:BossZn 2015-11-19 22:16

个回答

  • Toxic憧憬
    2015-11-20 00:12:21
    已采纳

    不会,当i=1,j=1的时候,它只不过同时满足i=j和i+j=2而已,但只运行了一次,并未重复加