题目:
代码:
#include<stdio.h>
int main()
{
int N;
scanf("%d",&N);
int array[N];
for(int i=0;i<N;i++)
{
scanf("%d",&array[i]);
}
// 移动非零元素到数组前部
int j = 0;
for(int i = 0; i < N; i++)
{
if(array[i] != 0)
{
array[j++] = array[i];
}
}
// 将剩余位置填充 0
while(j < N)
{
array[j++] = 0;
}
// 输出结果
for(int i=0;i<N;i++)
{
printf("%d ",array[i]);
}
return 0;
}
调试结果: