-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