55 删除数组重复元素
作者: Turbo时间限制: 1S章节: 一维数组
问题描述 :
已有一维数组,存储不超过100个整型数据,其中有些元素的值存在重复,从数组中删除所有重复的元素(每个元素只保留一个),并输出结果数组。
输入说明 :
用户可输入多组数据,每组数据由两行组成:
第一行:数组元素的个数n
第二行:n个数组元素,由空格分隔
输出说明 :
对于每组输入,输出最后的结果,整数之间以空格分隔。每行的开头与结尾无多余空格。
每组输出占一行。
输入范例 :
10
1 5 4 3 2 9 7 8 6 10
10
1 5 5 3 2 9 7 8 6 10
输出范例 :
1 5 4 3 2 9 7 8 6 10
1 5 3 2 9 7 8 6 10
#include<stdio.h>
#include<stdio.h>
int main(){
int m,n,i,len,j;
int a[100];
while(scanf("%d",&m)!=EOF){
len=m;
for(i=0;i<m;i++){
scanf("%d",&n);
a[i]=n;
}
for(i=0;i<m;i++){
for(j=i+1;j<m;j++){
if(a[i]==a[j]){
a[j]=0;
}
}
}
len=0;
for(i=0;i<m;i++){
if(a[i]==0){
continue;
}else{
a[len]=a[i];
len++;
}
}
if(len==0){
printf("Empty array!\n");
}
for(i=0;i<len;i++){
if(i==len-1){
printf("%d\n",a[i]);
}else{
printf("%d ",a[i]);
}
}
}
return 0;
}