C Programs | IT Developer
IT Developer

C Programs



Share with a Friend

Arrays in C

Find duplicate elements in an array

C Program: Find duplicate elements in an array

C

#include <stdio.h>

 

int main() {

    int arr[100], freq[100];

    int n, i, j, count;

 

    // Input array size

    printf("Enter number of elements in the array: ");

    scanf("%d", &n);

 

    // Input array elements

    printf("Enter %d elements:\n", n);

    for (i = 0; i < n; i++) {

        scanf("%d", &arr[i]);

        freq[i] = -1;  // Initialize frequency array

    }

 

    // Count frequency of each element

    for (i = 0; i < n; i++) {

        count = 1;

        for (j = i + 1; j < n; j++) {

            if (arr[i] == arr[j]) {

                count++;

                freq[j] = 0; // Mark duplicate as counted

            }

        }

        if (freq[i] != 0)

            freq[i] = count;

    }

 

    // Display duplicate elements

    printf("\nDuplicate elements in the array:\n");

    for (i = 0; i < n; i++) {

        if (freq[i] > 1) {

            printf("%d ", arr[i]);

        }

    }

 

    printf("\n");

    return 0;

}

Output

 
INPUT :
Enter number of elements in the array: 10
Enter 10 elements:
2 5 3 2 8 5 9 1 3 5

OUTPUT :
Duplicate elements in the array:
2 5 3

Explanation

  1. The program reads all elements into an array.
  2. A freq[] array is used to keep track of how many times each number appears.
  3. Nested loops count the frequency of each element.
  4. If a number appears more than once, it’s printed as a duplicate.