正文

for循環(huán)、字符串與數(shù)組(13)

通過游戲編程實戰(zhàn)教新手學(xué)C++編程 作者:(美)Michael Dawson


3.6.2  創(chuàng)建多維數(shù)組

程序做的第一件事情是為井字棋游戲棋盤聲明和初始化一個數(shù)組

char board[ROWS][COLUMNS] = { {'O', 'X', 'O'},

{' ', 'X', 'X'},

{'X', 'O', 'O'} };

代碼聲明了一個3×3(因為ROWS和COLUMNS都為3)的二維字符數(shù)組,并初始化了所有元素。

提示

可以只聲明而不初始化多維數(shù)組。如下例所示:

char chessBoard[8][8];

上面的代碼聲明了一個8×8的二維字符數(shù)組chessBoard。另外,多維數(shù)組的每維大小不一定要一樣。下面用單個字符表示游戲地圖的聲明是完全合法的:

char map[12][20];

3.6.3  多維數(shù)組的索引

程序接下來做的是顯示井字棋游戲的棋盤。但是在深入其細(xì)節(jié)之前,先介紹索引單個數(shù)組元素的方法。為數(shù)組的每一維提供一個值可以索引多維數(shù)組中的單個元素。在把數(shù)組中的空格替換成X時就使用了這種方法:

board[1][0] = 'X';

上面的代碼將字符X賦給元素board[1][0](原本是' ')。這步操作之后,程序以之前同樣的方式顯示了井字棋游戲的棋盤。

for (int i = 0; i < ROWS; ++i)

{

for (int j = 0; j < COLUMNS; ++j)

{

cout << board[i][j];

}

cout << endl;

}

通過一對嵌套for循環(huán),程序遍歷了整個二維數(shù)組,并顯示字符元素,形成了井字棋游戲的棋盤。


上一章目錄下一章

Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號