这段代码有什么错应该怎么改

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,m,i,j,x,y,k,row,l,r,sum=0,T;
    scanf("%d %d\n",&n,&m);
    scanf("%d",&T);
    int arr[n][m];
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            scanf("%d",&arr[i][j]);
        }
    }

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

        if(arr[i][0]==0)
        {
            scanf("%d %d %d",&x, &y, &k);
            arr[x][y]=k;
            for(j=0; j<m; j++)
            {
                printf("%d",arr[i][j]);
            }
        }


        else if(arr[i][0]==1)
        {
            scanf("%d %d %d",&row, &l, &r);
            for(j=l; j<r; j++)
            {
                sum=sum+arr[row][j];
            }
            printf("%d",sum);

        }
    }


    return 0;

}

img