我正在尝试使用'。'填充存储在2D数组中的12x12电路板。字符。
void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i, j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
board[i][j] = '.';
}
}
}
然后打印:
void printBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i,j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
printf(" %c", board[i][j]);
}
printf("\n");
}
printf("\n");
}
打印出一个空网格。看起来没有任何东西被存储在板[] []中。请帮忙吗?
答案 0 :(得分:0)
看起来你做得很好,至少在你展示的代码片段中。当我运行以下程序时:
#include <stdio.h>
#define BOARD_SIZE 12
void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]);
void printBoard(char board[BOARD_SIZE][BOARD_SIZE]);
int main() {
char board[BOARD_SIZE][BOARD_SIZE];
initializeBoard(board);
printBoard(board);
return 0;
}
void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i, j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
board[i][j] = '.';
}
}
}
void printBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i,j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
printf(" %c", board[i][j]);
}
printf("\n");
}
printf("\n");
}
我得到以下输出:
$ ./a.exe
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
你必须以某种方式/某处宣布第二块板并将其传递给你的printBoard()
功能。你能告诉我们更多代码吗?