请教一下c语言入门数组题,求解哪里错了

#include<stdio.h>
int main()
{
float a[4][4], sum;
int i, j, k;
for(i = 0; i < 4; i++)
{
for(j = 0; j < 4; j++)
{
scanf("%f ", &a[i][j]);
}
}
sum = a[0][0] + a[0][3] + a[3][0] + a[3][3];
printf("%.1f", sum);

return 0;

img

img

对角线数组坐标是 0,0 1,1 2,2 3,3

修改如下,供参考:

#include<stdio.h>
int main()
{
    float a[4][4], sum = 0;//修改
    int i, j, k;
    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 4; j++)
        {
            scanf("%f", &a[i][j]);//修改
            if (i == j) sum += a[i][j];
        }
    }
    //sum = a[0][0] + a[0][3] + a[3][0] + a[3][3];
    printf("%.1f", sum);
    return 0;
}

我怕你是不知道主对角线是什么

img


他让你算对角线,你加的这几个是什么?

主对角线元素下标不是00,11,22,33么

#include<stdio.h>
int main()
{
    float a[4][4], sum;
    int i, j, k;
    for(i = 0; i < 4; i++)
    {
        for(j = 0; j < 4; j++)
        {
            scanf("%f ", &a[i][j]);
        }
    }
    sum = a[0][0] + a[1][1] + a[2][2] + a[3][3];
    printf("%.1f", sum);

    return 0;
}

要求的不是主对角线的和嘛,你现在求的是四个角的和