第1行是一个整数n,表示随后有n组数据。
每组数据包含2行,第1行是表示元素个数的整数m,第2行是数组元素。
对每组数据,将数组中的0移到数组末尾,其他元素保持原来的顺序往前移,输出数组元素,以空格隔开,并换行。
程序如下
#include<stdio.h>
int main(){
int n,a,i,k,v,b;
scanf("%d",&n);
k=0;
for(i=0;i<n;i++){
scanf("%d",&a);
int A[a];
for(v=0;v<a;v++) {
scanf("%d",&A[v]);
}
for(v=0;v<a;v++){
if(A[v]!=0)
printf("%d ",A[v]);
else k++;
}
k=k;
for(k;k>=1;k--){
printf("0 ");
}
printf("\n");
}
return 0;
}