Write a C program to delete all duplicate elements from an array

By | 16.11.2016

Delete all duplicate elements from an array


Write a C program to delete all duplicate elements from an array. Here’s simple program to delete all duplicate elements from an array in C Programming Language.


What is an Array ?


Arrays a kind of data structure that can store a fixed-size sequential collection of elements of the same type. An array is used to store a collection of data, but it is often more useful to think of an array as a collection of variables of the same type.

Instead of declaring individual variables, such as number0, number1, …, and number99, you declare one array variable such as numbers and use numbers[0], numbers[1], and …, numbers[99] to represent individual variables. A specific element in an array is accessed by an index.

All arrays consist of contiguous memory locations. The lowest address corresponds to the first element and the highest address to the last element.


Here is source code of the C program to delete all duplicate elements from an array. The C program is successfully compiled and run(on Codeblocks) on a Windows system. The program output is also shown in below.


SOURCE CODE : :


/*  C program to delete all duplicate elements from an array  */

#include <stdio.h>
#define MAX_SIZE 100 //Maximum size of the array

int main()
{
    int arr[MAX_SIZE]; //Declares an array of size 100
    int size; //Total number of elements in array
    int i, j, k; //Used for loop

    /*
     * Reads size and elements of array
     */
    printf("Enter size of the array : ");
    scanf("%d", &size);

    printf("\nEnter elements in array : \n");
    for(i=0; i<size; i++)
    {
        printf("\nEnter %d element in array : ",i+1);
        scanf("%d", &arr[i]);
    }


    /*
     * Finds all duplicate elements in array
     */
    for(i=0; i<size; i++)
    {
        for(j=i+1; j<size; j++)
        {
            /* If any duplicate found */
            if(arr[i]==arr[j])
            {
                for(k=j; k<size; k++)
                {
                    arr[k] = arr[k+1];
                }

                /* Decrement size after removing one duplicate element */
                size--;

                /* If shifting of elements occur then don't increment j */
                j--;
            }
        }
    }


    /*
     * Print array after deleting duplicate elements
     */
    printf("\nArray elements after deleting duplicates : ");
    for(i=0; i<size; i++)
    {
        printf(" %d ", arr[i]);
    }

    return 0;
}

OUTPUT : :


Enter size of the array : 6

Enter elements in array :

Enter 1 element in array : 1

Enter 2 element in array : 2

Enter 3 element in array : 2

Enter 4 element in array : 3

Enter 5 element in array : 2

Enter 6 element in array : 1

Array elements after deleting duplicates :  1  2  3

If you found any error or any queries related to the above program or any questions or reviews , you wanna to ask from us ,you may Contact Us through our contact Page or you can also comment below in the comment section.We will try our best to reach up to you in short interval.


Thanks for reading the post….

4.7 3 votes
Article Rating
Category: Arrays Programs C Programming Tags:

About Tunde A

My name is Tunde Ajetomobi, a Tech Enthusiast and Growth Hacker. I enjoy creating helpful content that solves problem across different topics. Codezclub is my way of helping young aspiring programmers and students to hone their skills and find solutions on fundamental programming languages.

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments