лексика, морфология, синтаксис русского языка
int* matr = (int*)malloc(n * m * sizeof(int));
а к конкретной ячейке обращаться как matr[i * n + j]void free_matr(int m, int** matr) {
for(int i = 0; i < m; i++) {
free(matr[i]);
}
free(matr);
}