2016-03-12 51 views
-1

嗨,大家好我有一個二維數組char' - ',我想打印出來。2D C++ Grid display

但是我想以網格格式打印它,使點(0,0)位於數組的左下角,而不是左上角。

比如現在它的印刷:

0 1 2 3 
1 
2 
3 

,我希望它的方式打印:

3 
2 
1 
0 1 2 3 

我如何打印陣列以行爲更像是一個比一個圖陣列?

謝謝。

編輯:這是我的打印功能看起來像

displayGrid(){ 
for(int column = 0; column<gridSize; column++){ 
    for(int row = 0; row < gridSize; row++){ 
     std::cout<<gridArray[row][column]<< " "; 
    } 
    std::cout<<std::endl; 
    } 
} 

這是我如何填寫我的數組中的元素:

createGrid(){ 
int gridSize = 50; 
for(int column = 0; column<gridSize; column++){ 
    for(int row=0; row<gridSize; row++){ 
     gridArray[row][column] = empty; 
    } 
} 
    //gridArray[0][1] = full;  first value is x, second is y. Works. 

} 
+2

您的實際循環看起來如何?從這一點開始,要扭轉印刷順序並不難。可能會重新開始用鉛筆和紙張也可以幫助。 –

+1

反轉你的外圈。代替0-> size-1,從size-1開始 - > 0 –

+0

看看我的編輯我有打印我的網格的代碼。但我希望它也像圖表一樣,不僅印刷得像一張。 –

回答

0

只要讓你的第一個循環開始於gridSize和減少它。 應與此類似:

displayGrid(){ 
for(int column = gridSize; column>=0; column--){ 
    for(int row = 0; row < gridSize; row++){ 
     std::cout<<gridArray[row][column]<< " "; 
    } 
    std::cout<<std::endl; 
    } 
} 
+0

中也添加了這一點嘿,我嘗試了你的代碼,但它不打印任何東西,我不知道爲什麼。它基本上不輸出任何東西。 –

+0

我有一個錯字。 for循環中的條件實際上是column> = 0; –

+0

'int column = gridSize'應該是'int column = gridSize - 1' – timocov