我是 ICT 专业的一年级学位学生,我的作业要求我开发一个简单的糖果迷恋游戏。
所以我现在的问题是在程序初始化时打印围绕数字的标记(即"|"
和)。"_"
board[5][5]
这是我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
//FUNCTION: Draw the Board
int drawBoard()
{
//Declare array size
int board[9][9];
//initialize variables
int rows, columns, randomNumber, flag;
//random number seed generator
srand(time(NULL));
for ( rows = 0 ; rows < 9 ; rows++ )
{
for ( columns = 0 ; columns < 9 ; columns++ )
{
flag = 0;
do
{
//generate random numbers from 2 - 8
randomNumber = rand() %7 + 2;
board[rows][columns] = randomNumber;
//Checks for 2 adjacent numbers.
if ( board[rows][columns] == board[rows - 1][columns] || board[rows][columns] == board[rows][columns - 1] )
{
flag = 0;
continue;
}
else
{
flag = 1;
printf( " %d ", board[rows][columns] );
}
} while ( flag == 0 );
}//end inner for-loop
printf("\n\n");
}//end outer for-loop
marker();
}//end FUNCTION drawBoard
//FUNCTION: Mark the surrounding of the number with "|" and "_" at board[5][5]
void marker()
{
printf( " _ \n" );
printf( "|%c|\n", a );
printf( " _ \n" );
}
int main()
{
drawBoard();
}
所以......是的,我被困在这部分:
printf( "%c" , drawBoard(board[5][5]) );
printf( "\n\n%c" , drawBoard( board[5][5]) );
好吧,我想我只是在功能上很弱。我想创建一个i.e void marker()
可以在函数中调用的单独函数(),drawBoard
然后具有marker()
标记坐标处数字周围区域的函数board[5][5]
。
我是否以错误的方式思考和做事?请指教。
山姆
编辑1:感谢您的帮助黑客!是的,我想我现在了解了函数的基本用法。剩下的问题是,即使我marker( board[5][5] )
从调用drawBoard()
,标记的打印也不会发生在放置在 board[5][5] 中的数字上。
印制板后印制记号笔。知道为什么会这样吗?右边应该打印在坐标 [5][5] :/