删除一维数组中重复的元素(C++)[急啊]
编写一个通用程序,删除一维数组中重复的元素,并统计删除元素的个数。例如,原数组为{1,1,3,4,3,1,5,2,6,4},删除了重复的4个元素后为{1,3,4,5,2,...
编写一个通用程序,删除一维数组中重复的元素,并统计删除元素的个数。例如,原数组为{1,1,3,4,3,1,5,2,6,4},删除了重复的4个元素后为{1,3,4,5,2,6}
用C++写啊,不是C 展开
用C++写啊,不是C 展开
展开全部
#include<stdio.h>
#inclue<memory.h>
int main()
{
int n,a[1001];
scanf("%d",&n);//n 个元素
int i;
for(i=0;i<n;i++) scanf("%d",&a[i]);
//读入原数组
bool flag[100001];
int b[1001];
memset(flag,0,sizeof(flag));
memset(b,0,sizeof(b));
int num=0;
for(i=0;i<n;i++)
{
if(flag[i]==0) flag[i]=1;
else
{
b[i]=1; num++;
}
}
printf("delete %d\n",num);
for(i=0;i<n;i++)
if(b[i]==0) printf("%4d",a[i]);
}
#inclue<memory.h>
int main()
{
int n,a[1001];
scanf("%d",&n);//n 个元素
int i;
for(i=0;i<n;i++) scanf("%d",&a[i]);
//读入原数组
bool flag[100001];
int b[1001];
memset(flag,0,sizeof(flag));
memset(b,0,sizeof(b));
int num=0;
for(i=0;i<n;i++)
{
if(flag[i]==0) flag[i]=1;
else
{
b[i]=1; num++;
}
}
printf("delete %d\n",num);
for(i=0;i<n;i++)
if(b[i]==0) printf("%4d",a[i]);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询