-2
接受大小为N的数组并打印重复元素的总数(发生两次或更多次的元素)。计算数组中重复元素的数量 - C
输入格式:第一行包含N.第二行包含N个正整数值,每个正整数值用空格分隔。
输出格式:第一行包含重复元素的计数(其中有重复元素的计数)
我所写的作品只有两个相同的元素,并无法读取超过2次重复的程序。
#include<stdio.h>
#include <stdlib.h>
int main()
{
int arr[1000],i,j,n,count=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
}
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(arr[i]==arr[j])
{
count=count+1;
break;
}
}
}
printf("%d",count);
}
输入:N = 8
在这里,程序返回3而不是2,因为3重复(111)。 建议一些想法,以避免这...
输出预期是2.重复元素的数量(1有两个重复,2有一个重复)。 count(1,2)
你允许第一排序呢? – Bathsheba
@Bathsheba是的。 –
那么,一旦你对它进行了排序,就需要遍历数组并检查一个元素是否与前一个元素相同。 – Bathsheba