c语言数组问题~~~~~~~~~~

图片说明
请问为啥错

 /* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */

#include<stdio.h>
#define  M 4
#define  N 4
int main()
{
    int a[M][N],max,i,j,indexi,indexj;

    for( i=0;i<M;i++)
        for (j=0;j<N;j++)
        {

            /* PRESET CODE END - NEVER TOUCH CODE ABOVE */
            scanf("%d",&a[i][j]);
        }
        max=a[0][0];
        for( i=0;i<M;i++)
            for (j=0;j<N;j++)
                if(a[i][j]>max)
                {
                    max=a[i][j],indexi=i,indexj=j;
                }

                printf("最大数为%d,位于%d行,%d列\n",a[i][j],indexi,indexj);
}

还有个错误:

  printf("最大数为%d,位于%d行,%d列\n",a[i][j],indexi,indexj);
    改为:
     printf("最大数为%d,位于%d行,%d列\n",max,indexi,indexj);
 #include<stdio.h>
#define  M 4
#define  N 4
int main()
{
    int a[M][N],max,i,j,indexi,indexj;

    for( i=0;i<M;i++)
        for (j=0;j<N;j++)
        {

            /* PRESET CODE END - NEVER TOUCH CODE ABOVE */
            scanf("%d",&a[i][j]);
        }
        max=a[0][0];
                indexi=0; indexj=0; //这需要加初始化
        for( i=0;i<M;i++)
            for (j=0;j<N;j++)
                if(a[i][j]>max)
                {
                    max=a[i][j],indexi=i,indexj=j;
                }

                printf("最大数为%d,位于%d行,%d列\n",a[i][j],indexi,indexj);
}

#include
#define M 4
#define N 4
int main()
{
int a[M][N],max,i,j,indexi,indexj;

for( i=0;i<M;i++)
    for (j=0;j<N;j++)
    {

        /* PRESET CODE END - NEVER TOUCH CODE ABOVE */
        scanf("%d",&a[i][j]);
    }
    max=a[0][0];
            indexi=0; indexj=0; //这需要加初始化
    for( i=0;i<M;i++)
        for (j=0;j<N;j++)
            if(a[i][j]>max)
            {
                max=a[i][j],indexi=i,indexj=j;
            }

            printf("最大数为%d,位于%d行,%d列\n",a[i][j],indexi,indexj);

}