2016-10-31 3 views
-2

Ich arbeite an einem Spiel Dame, in dem ich die Zeichen "X" und "O" in das 2d-Array ausdrucken möchte. Aber mein Code funktioniert nicht, stattdessen druckte er verschiedene Zeichen aus. Ich brauche Hilfe.Zuweisen von Zeichen in 2d-Array [Checkers]

Hier ist mein Code:

#include <stdio.h> 


void message() 
{ 

char name[20],name2[20]; 

printf("Please enter the name for the first player : "); 
scanf("%s", &name); 
printf("Please enter the name for the second player : "); 
scanf("%s", &name2); 

printf("\nGood day %s and %s, let's start the game....all the best!!!\n\n", name, name2); 

} 

int gameboard(char board[8][8]) 
{ 

int x, y; 

for(x=0; x<8; x++) 
    { 
    for(y=0; y<8; y++) 
    { 
    printf("|%c "); 
    } 
    printf("|\n\n"); 
    } 



} 

void character(char board[8][8]) 
{ 
int i,j; 

for(i=0;i<8;i++){ 
    for(j=0;j<8;j++){ 
    if(i<3){ 

     if(i%2 == 0){ 
       if(j%2 == 0){ 
       board[i][j] = ' '; 

       } 
       if(j%2==1){ 
       board[i][j]= 'O'; 

       } 
     } 
     if(i%2 == 1){ 
       if(j%2 == 0){ 
       board[i][j] = 'O'; 
       } 
       if(j%2 ==1){ 
      board[i][j]= ' '; 

       } 
     } 

    } 
    if((i==3) || (i==4)) 
    {board[i][j] = ' ';} 
    if(i>4) 
    { 

      if(i%2 == 0){ 
        if(j%2 == 0){ 
        board[i][j] = ' '; 

        } 
        if(j%2 ==1){ 
        board[i][j]= 'X'; 

        } 
      } 

      if(i%2 == 1){ 
        if(j%2 == 0){ 
        board[i][j] = 'X'; 

        } 
        if(j%2 ==1){ 
        board[i][j]= ' '; 

        } 
      } 
    } 

    } 
    } 

} 


int main() 
{ 
    int x, y; 
    char bx[8][8]; 

    message(); 

    gameboard(bx); 

    character(bx); 


return 0; 

} 
+1

http://stackoverflow.com/a/40216407/971127 – BLUEPIXY

+0

@XxY: Der Kommentar scheint einige haben nützlicher Code. Bitte sehen Sie sich das an. – CyprUS

Antwort

0

Die Reihenfolge der character(bx) und gameboard(bx) Bedarf geändert werden, so dass sie sie die Werte im Array vor Druck gesetzt werden.

und ändern Sie Ihre Spielfeld Funktion wie folgt den Wert für das spezifische Element zeigen:

int gameboard(char board[8][8])                                            
{ 
      ... 

      printf("|%c ",board[x][y]); 

      ... 
} 
+0

Das löst es, Danke. – XxY

Verwandte Themen