Va bene questo per la matrice ?

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

int main(int argc, char *argv[]) {
  int i, j, k;
  int m=5, n=6;
  int **myArray;

	//Creo la tabella tridimensionale
	if(!(myArray = (int **)malloc(m*sizeof(int **)))) {
		printf ("Non c'e' abbastanza memoria...\n");
   }
   
   // Inserimento manuale Numero
	for(i = 0; i < m; i++){
		*(myArray+i) = (int *)malloc(n*sizeof(int *));
      for(j = 0; j < n; j++){
         printf ("Numero : ");
         scanf("%d", &k);
         *((*(myArray+i))+j) = k;
		}
	}
   
   // Stampa Matrice
   for (i=0; i < m; i++) {
      for (j=0; j < n; j++) {
         printf ("%5d", myArray[i][j]);
      }
      printf ("\n");
   }
   
   free(myArray);
   
   system("PAUSE");	
   return 0;
}