【发布时间】:2021-03-16 14:42:57
【问题描述】:
我正在迭代 C 中的一些计数器,以将结果打印在像 012, 013, 014, etc... 这样分隔的单行上
我的代码因某些情况而终止,并且正在被机器人纠正。
如何在我的代码的最后一个值之后停止打印, 。
想法是获得一个只有唯一数字且按升序排列的 3 位数字
以789结尾;
我的功能如下:
void my_print_comb(void){
for(int i = 47; i++ < 57 ; ){
for(int j = 48; j++ < 57 ; ){
for(int k = 49; k++ < 57 ; ){
if( i != j && i != k && j != k){
while( i < j && j < k){
char a = i, b = j, c = k;
my_putchar(a);
my_putchar(b);
my_putchar(c);
my_putchar(',');
my_putchar(' ');
break;
}
}
}
}
}
}
【问题讨论】:
-
通过修改代码不在代码最后一个值之后打印
,。你介意发Minimal, Reproducible Example吗? -
也许,不要打印第一个数字的逗号。然后在数字前打印一个逗号。
-
我通常选择的选项是在除第一个标记之外的每个标记之前打印分隔符。
-
在除第一个项目之外的每个项目之前打印一个逗号,即使您事先不知道要打印多少项目。
-
for(int i = 47; i++ < 57 ; ){这通常不是如何编写for循环。for (int i = 48; i <= 57; i++) {是首选,因为它更清楚它到底做了什么。
标签: c loops iteration output stdout