Код:
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
int main(){
int **a;
int n, m;
scanf("%d", &n);
scanf("%d", &m);
a = (int**)malloc(n*m * sizeof(int));
for(int i = 0; i < n; i++) {
a[i] = (int*)malloc(m * sizeof(int*));
for(int j = 0; j < m; j++) {
scanf("%d", &a[i][j]);
}
}
for(int i = 0; i < n; i++) {
for(int j = 0; j < m; j++) {
printf("%d", a[j][i]);
printf(" ");
}
printf("\n");
}
for(int i = 0; i < n; i++){
free(a[i]);
}
free(a);
}

int col= 4, row= 3;
for (int r= 0; r< row; r++)
{
for (int c= 0; c< col; c++)
{
printf("%d\t", MatrA[r*col+c]);
}
printf("\n");
}
printf("\n");
for (int c= 0; c< col; c++)
{
for (int r= 0; r< row; r++)
{
printf("%d\t", MatrA[r*col+c]);
}
printf("\n");
}