试图弄清楚如何在二维阵列中打印r

时间:2013-10-17 22:44:36

标签: multidimensional-array

我正在努力让第一个元素打印出'R'而不是'。'

这是我迄今为止所放弃的。

    void drawMap(char map[10][10]){
    int i, j;
    printf("Now drawing map\n");
    for(i = 0; i < 10; i++){
            for(j = 0; j < 10; j++){
                    map[i][j] = '.';
                    printf("%c ", map[i][j]);
            }
                    printf("\n");
}
}

我可以打印点,但我不知道如何让第一个元素打印出来。

2 个答案:

答案 0 :(得分:0)

如果我理解正确,您希望每行的第一个元素是R而不是.?分配map[i][j]后,您可以根据要分配的列的索引选择.R,即j

map[i][j] = j == 0 ? 'R' : '.';

这也可以写成ifmap[i][j]分配无关:

if (j == 0) {
    map[i][j] = 'R';
} else {
    map[i][j] = '.';
}

答案 1 :(得分:0)

如果我真的明白。你想像那样打印

[R .........

..........

..........

..........

..........

...

  void drawMap(char map[10][10]){
       int i, j;
       printf("Now drawing map\n");
       for(i = 0; i < 10; i++){
          for(j = 0; j < 10; j++){
                if(i==0 && j==0)
                   map[i][j] = 'R';
                else
                   map[i][j] = '.';
                printf("%c ", map[i][j]);
          }
                printf("\n");
        }
   }