2012-01-21 9 views
1
#include<iostream.h> 

int main() { 
    int i, j, matrix[2][3], vector[6]; 

    //filling the matrix with element 
    for(i=0;i<2;i++) 
    for(j=0;j<3;j++) 
     cin >> matrix[i][j]; 
    for(i=0;i<2;i++) { 
    for(j=0;j<3;j++) 
     cout << matrix[i][j]; 
    cout << endl; 
    } 
    //filling the vector with matrix elements 
    for(i=0;i<2;i++) { 
    for(j=0;j<3;j++) 
     vector[j] = matrix[i][j]; 
    } 
    //show the vector 
    for(j=0;j<6;j++) { 
    cout << vector[j]; 
    } 
    return 0; 
} 

答えて

2

ベクトルに行列の最後の行を示して、私のコードは、行によってベクトル行に行列要素を変換したい:

vector[j]=matrix[i][j]; 

あなただけの(列インデックスを使用しますj)を使用するので、ベクトルの0,1,2,1,1,2の位置(3から5の空白を残して)に(順番に)書き込むことができます。

は、コードが高く評価されているが、それは常に付随する説明を持っている必要があり

vector[i*3 + j]=matrix[i][j]; 
0
//filling the vector with matrix elements 
    for(i=0;i<2;i++) { 
    for(j=0;j<3;j++) 
     vector.push_back(matrix[i][j]); 
    } 
+0

試してみてください。これは長い必要はありませんが、期待されています。 – peterh

関連する問題