C++ 行列の転置

行列の転置(20点) 出題内容:行列の次数を入力し、行列の全要素(整数)を行ごとに入力し、行列を転置して出力します。次数は[1,5]の間の整数であり、この範囲外の場合は「行列順序エラー」が表示されます。入力形式: 行 1、次数 n を表す整数。その後、n 行のデータがあり、各行には行ごとに入力される行列要素である n 個の整数が含まれます。出力形式: n 行の転置データ。スペースで区切られ、行末にはスペースはありません。入出力サンプル 1 入力:44 6 8 92 7 4 53 8 16 151 5 7 11 出力:4 2 3 16 7 8 58 4 16 79 5 15 11 入出力サンプル 2 入力:0 出力:行列順序エラー 注
:転置は、単なる表示効果ではなく、行列を格納する配列内の要素によって実装される転置操作である必要があります。
時間制限: 2000ms メモリ制限: 32000kb C++ #include
using namespace std;
int main()
{ const int N=100,M=100; int a[N][M]; int i,j,n,temp; cin> >n; if(n>=1&&n<=5) { for(i=0;i<n;i++) { for(j=0;j<n;j++) { cin>>a[i][j] ; } }












    for(i=0;i<n;i++)
    {
        for(j=0;j<i;j++)
        {
            temp=a[i][j];
            a[i][j]=a[j][i];
            a[j][i]=temp;
        }
    }

    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            cout<<a[i][j];
            if(j!=(n-1))
                cout<<" ";
        }
        cout<<endl;
    }
}
else
    cout<<"matrix order error";

return 0;

}

おすすめ

転載: blog.csdn.net/qq_45972928/article/details/104705530