簡體   English   中英

將值讀入2D數組中以獲取C ++嗎?

[英]Reading values into a 2d array for C++?

假設我有一個MatrixA數組,該數組為2x3,並填充為0。如何設置循環,以便將值讀入其中,但如果用戶僅輸入3個值,則MatrixA中的其余3個為0?

編輯:

const int Q = 2;
const int S = 3;
int matrixA[Q][S] = {0};
for(int i = 0; i < Q; i++){
        for(int j = 0; j < S; j++){
            cin >> matA[i][j];
        }
    }

用0初始化數組MatrixA,然后接受用戶的值。 代碼如下所示:

int iOuter = 0;
int iInner = 0;
for (iOuter = 0; i <2; iOuter++)
   for (iInner = 0; i < 3; iInner++)
   {
      MatrixA[iOuter][iInner] = 0;
      cin >> MatrixA[iOuter][iInner];
   }

我希望您有一些代碼可以幫助我解決我的問題,但是假設您的問題和陳述我會這樣說。 有一個循環,用於計算用戶輸入數字的次數。 當用戶輸入三個數字時; 初始化一個行變量,該變量的值為2。然后使用for循環或您選擇的任何其他方法,根據用戶估算數字的次數循環它。

另外,為了回答有關剩余3個數字的問題,我在下面提供了有關數組未初始化索引的鏈接

為什么在C ++中將int數組未初始化為零?

const int Q = 2;
const int S = 3;
int flag = 0;
int matrixA[Q][S] = {0};
for(int i = 0; i < Q; i++){
    for(int j = 0; j < S; j++){
        matA[i][j] = 0;
    }
 }

for(int i = 0; i < Q; i++){
    for(int j = 0; j < S; j++){
        if(getline(cin, matA[i][j])){

        }
        else{
            flag = 1;
            break;
        }
    }
    if(flag == 1){
        break;
    }
}

讓我知道是否有幫助.. :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM