Per restare nello spirito di quanto scritto da te:
codice:
#include <stdio.h>
#include <stdlib.h>
/*
*
*/
int **matrix;
int m,n,i,j,x;
int main(int argc, char** argv)
{
printf("Scrivi righe e colonne della matrice\n");
scanf("%d %d",&m,&n);
printf("Valori inseriti %d, %d \n", m, n);
matrix= malloc(m*sizeof(int *));
for(x=0; x<m; x++){
matrix[x] = malloc(n*sizeof(int));
}
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
printf("Inserisci il valore al posto %d.%d\n",i,j);
scanf("%d", &matrix[i][j]);
}
return (EXIT_SUCCESS);
}