In this article we will learn to implement a C program to find number of duplicate elements in an array. A C program is provided below which reads a list of number and prints the number of duplicates in a given array.
Note: This program only works if the numbers are repeated for 2 times. It doesn’t work if the numbers are repeated more than 2 times.
The program is as follows:
#include <stdio.h>
#include <conio.h>
int main()
{
int n;
printf("Enter n: ");
scanf("%d", &n);
int a[20];
printf("Enter array elements: ");
for(int i = 0; i < n; i++)
scanf("%d", &a[i]);
int temp;
//Sorting the array
for(int i = 0; i < n - 1; i++)
{
for(int j = i+1; j < n; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
int count = 0;
for(int i = 0; i < n - 1; i++)
{
if(a[i] == a[i+1])
count++;
}
printf("No. of duplicates: %d", count);
getch();
return 0;
}
Input and output for the above program is as follows:
Enter n: 10
Enter array elements: 1 2 1 3 2 4 4 5 3 6
No. of duplicates: 4
Suryateja Pericherla, at present is a Research Scholar (full-time Ph.D.) in the Dept. of Computer Science & Systems Engineering at Andhra University, Visakhapatnam. Previously worked as an Associate Professor in the Dept. of CSE at Vishnu Institute of Technology, India.
He has 11+ years of teaching experience and is an individual researcher whose research interests are Cloud Computing, Internet of Things, Computer Security, Network Security and Blockchain.
He is a member of professional societies like IEEE, ACM, CSI and ISCA. He published several research papers which are indexed by SCIE, WoS, Scopus, Springer and others.
Leave a Reply