Czego potrzebuje jeszcze do transponowania macierzy?

 int m,n;
    cin>>m>>n;
    int tab[m][n];

    for(int i=0; i<m;i++)
    {
            for(int j=0;j<n;j++)
            {
                    cin>>tab[i][j];
            }
    }

    for(int i=0;i<m;i++)
    {
            for(int j=0;j<n;j++)
            {
                    cout<<"tab "<<"["<<j<<"]"<<"["<<i<<"]"<<" "<<tab[i][j]<<endl;
            }
    }