两个方法:
输出第一个数值时不加空格,之后所有数值前面加一空格;输出最后一个数值后面不加空格,之前所有数值后面加一空格。
推荐第一种,因为检测第一个输出通常比较简单。例如:
for(inti=0;i<N;i++)printf(i==0?"%d":" %d",f());
或:
intx;if(get_next(&x)){printf("%d",x);while(get_next(&x)){printf(" %d",x);}