我是C和编程的新手。我正在尝试打印以逗号分隔的数组。但是不希望打印最后一个逗号元素。这是我到目前为止的代码
void p_array(const int array[], const int s) {
for(int i = 0; i < s; i++) {
printf("%i, ",array[i]);
}
}
我将阵列打印为
1, 2, 3, 4,
虽然我不希望打印逗号的最后一个元素。我知道我做了一些根本错误的事情。任何帮助表示赞赏。
1, 2, 3, 4
答案 0 :(得分:2)
for(int i = 0; i < s; i++) {
if(i)
printf(", ");
printf("%i",array[i]);
}
答案 1 :(得分:1)
你可以这样做:
printf("%i%s", array[i], i==s-1 ? "" : ", ");
另一种方法是让循环少一次迭代,然后在循环后打印出最后一个元素w / printf
。