1. 程式人生 > >1117:刪除陣列中的0元素

1117:刪除陣列中的0元素

//1117: 6-9刪除陣列中的0元素
//  編寫函式CompactIntegers,刪除陣列中所有值為0的元素,其後元素向陣列首端移動。
//注意,CompactIntegers函式需要接收陣列及其元素個數作為引數,函式返回值應為刪除操作執行後陣列的新元素個數。
//  輸入時首先讀入陣列長度,再依次讀入每個元素。
//  將呼叫此函式後得到的陣列和函式返回值輸出。
//樣例輸入
//7
//2 0 4 3 0 0 5
//樣例輸出
//2 4 3 5
//4

#include<stdio.h>
int CompactIntegers(int x)
{
	int i,a[1000],count=0;
	for(i=0;i<x;i++)
	{
		scanf("%d",&a[i]);
		if(a[i]!=0)
		{
			printf("%d ",a[i]);
			count++;
		}
	}
	printf("\n");
	return(count);
}
int main()
{
	int n;
	scanf("%d",&n);
	printf("%d",CompactIntegers(n));
	return 0;
 } 

在這裡插入圖片描述