Array of arrays

const int N= 3;
const int M= 4;

int X[N][M]; // 12 elements, 3 rows, 4 columns
int X[3][4]; // 12 elements, 3 rows, 4 columns

// Different ways to initialize two-dimensional array
int X[2][3] = {{1, 3, 0}, {-1, 5, 9}};
int X[2][3] = {1, 3, 0, -1, 5, 9};

--------------------------------------------------------------------------------
for (int i = 0; i < N; ++i)
{
  for (int j = 0; j < M; ++j)
  {
    printf("Row%d, Column%d: ", i + 1, j + 1);
    scanf("%d", &X[i][j]);
  }
}

--------------------------------------------------------------------------------
printf("\\nDisplaying values: \\n\\n");
for (int i = 0; i < N; ++i)
{
  for (int j = 0; j < M; ++j)
  {
    printf("Row%d, Column%d = %d\\n", i + 1, j + 1, X[i][j]);
  }
}