-3
我的代碼有什麼問題?它顯示板後會崩潰。字符功能有什麼問題嗎?我已經仔細考慮了至少一個小時,但仍然無法找出問題所在。簡單的C程序崩潰
這裏是我的代碼:
#include <stdio.h>
void gameboard(char board[8][8])
{
int x, y;
for(x=0; x<16; x++)
{
for(y=0; y<8; y++)
{
if(x % 2 == 0)
{
printf(" %c ", board[x][y]);
}else{
printf("| %c |",board[x][y]);
}
}printf("\n");
}
}
void character(char board[8][8])
{
int x,y;
for(x=0;x<16;x++){
for(y=0;y<8;y++){
if(x<6){
if(x%2 == 0){
if(x%2 == 0){
board[x][y] = ' ';
}
}
if(x%2 == 1){
if(y%2 == 0){
board[x][y] = 'O';
}
if(y%2 ==1){
board[x][y]= ' ';
}
}
if(x==3){
if(y%2 == 1){
board[x][y] = 'O';
}
if(y%2 == 0){
board[x][y] = ' ';
}
}
}
if((x==6)||(x==7)||(x==8)||(x==9)){
board[x][y] = ' ';
}
if(x>9)
{
if(x%2 == 0){
if(x%2 == 0){
board[x][y] = 'X';
}
if(y%2 == 0){
board[x][y] = ' ';
}
}
if(x%2 == 1){
if(y%2 == 1){
board[x][y] = ' ';
}
}
if(x==12){
if(y%2 == 0){
board[x][y] = 'X';
}
if(y%2 == 1){
board[x][y] = ' ';
}
}
}
}
}
}
int main()
{
char bx[8][8];
character(bx);
gameboard(bx);
return 0;
}
您是否已經在調試器中逐步瞭解代碼?你很可能在數組邊界之外進行索引。學習正確的調試技術與學習語言一樣重要。 – OldProgrammer