Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c-成对打印多维数组的字符_C_Arrays_Multidimensional Array - Fatal编程技术网

c-成对打印多维数组的字符

c-成对打印多维数组的字符,c,arrays,multidimensional-array,C,Arrays,Multidimensional Array,所以我有一个2D数组,它保存用户输入的字符。用户一次输入两个字符,如“AD”、“TC”、“2B”和“LM”。我试图打印出数组,使其格式为“AD,TC,2B,LM”,但现在它打印为“A,D,T,C,2,B,L,M,” 我想知道是否有一种方法可以像用户最初输入的那样打印字符2乘2?此外,我还想去掉末尾多余的逗号 int i, j; for (i = 0; i < 4; i++) { for(j = 0; j < 2; j++){ printf("%c,", use

所以我有一个2D数组,它保存用户输入的字符。用户一次输入两个字符,如“AD”、“TC”、“2B”和“LM”。我试图打印出数组,使其格式为“AD,TC,2B,LM”,但现在它打印为“A,D,T,C,2,B,L,M,”

我想知道是否有一种方法可以像用户最初输入的那样打印字符2乘2?此外,我还想去掉末尾多余的逗号

int i, j;
for (i = 0; i < 4; i++) {
    for(j = 0; j < 2; j++){
        printf("%c,", usersAnswers[i][j]);
    }
}
inti,j;
对于(i=0;i<4;i++){
对于(j=0;j<2;j++){
printf(“%c”,usersAnswers[i][j]);
}
}
在打印字符之前添加printf(逗号)位置检查可能是一种解决方案。第一个条件(i>0)去掉第一个和最后一个逗号。第二个条件(j==0)去掉一行中的逗号

int i, j;
for (i = 0; i < 4; i++) {
    for(j = 0; j < 2; j++){
        if(i > 0 && j == 0) { // add the print comma condition
            printf(",");
        }
        printf("%c", usersAnswers[i][j]);
    }
}
inti,j;
对于(i=0;i<4;i++){
对于(j=0;j<2;j++){
如果(i>0&&j==0){//添加打印逗号条件
printf(“,”);
}
printf(“%c”,usersAnswers[i][j]);
}
}

简而言之,在打印一行中除第一行以外的第一个字符之前,请先打印逗号。

您当前的输出正是写入
printf
for
循环的内部
所要创建的。将
printf
中的
%c,
更改为
%c”
,然后在第一次
}
之后放入
printf(“,”
)。