How to find the minimum element in an array. Finding the minimum of an Array using C.

Get the algorithm and the code in C language on how to find the minimum element in an array.

Finding the minimum of an array is the basis for more advanced sorting operations in DSA.

Algorithm on how to find the minimum element in an array

STEP 1: min=A[0]
STEP 2: FOR(I=1 TO N) DO
STEP 3: IF(min>A[i])DO
STEP 4: min=A[I]
STEP 6: ENDIF
STEP 7: ENDFOR
STEP 8: STOP

Code for finding the minimum of an Array using C

Full code in C

#include <stdio.h>
int main()
{
int n;
printf("enter the limit ");
scanf("%d",&n);
int a[n];
printf("enter the elements ");
for(int i=0;i<n;i++) 
{
printf("a[%d]",i);
scanf("%d",&a[i]);
}int min=a[0];
for(int i=0;i<n;i++)
{
if(min>a[i])
min=a[i];
}
printf("THE SMALLEST ELEMENT IS %d",min);
return 0;
}

Explanation

  1. This C program is designed to read an array of integers from the user, find the smallest element in the array, and then print that smallest element. Let’s break down the code step by step:
#include <stdio.h>

int main()
{
    int n;
    printf("enter the limit ");
    scanf("%d",&n);

int n;: Declares a variable n to store the size of the array (how many elements will be input by the user).

printf("enter the limit ");: Asks the user to enter the number of elements (the “limit” of the array).

scanf("%d",&n);: Reads the number entered by the user and stores it in n, which will be the size of the array.

   int a[n];
    printf("enter the elements ");
    for(int i=0; i<n; i++) 
    {
        printf("a[%d]", i);
        scanf("%d", &a[i]);
    }

int a[n];: Declares an array a of size n.

This is a variable-length array (VLA), where the size of the array is determined at runtime based on the value of n.

printf("enter the elements ");: Asks the user to input the elements of the array.

for(int i=0; i<n; i++): This is a for loop that runs from i = 0 to i = n-1, allowing the user to input n elements into the array a.

  • printf("a[%d]", i);: Displays the index i to the user so they know where to input each element.
  • scanf("%d", &a[i]);: Reads each integer entered by the user and stores it in a[i].
    int min = a[0];
    for(int i=0; i<n; i++)
    {
        if(min > a[i])
            min = a[i];
    }

int min = a[0];: Initializes min to the first element of the array a[0].

This will hold the smallest value found in the array.

for(int i=0; i<n; i++): This loop iterates through the array again to find the smallest element.

  • if(min > a[i]): Compares the current value of min with the element a[i] at index i. If a[i] is smaller than the current min, it updates min to a[i].
    printf("THE SMALLEST ELEMENT IS %d", min);
    return 0;
}

printf("THE SMALLEST ELEMENT IS %d", min);:

Once the loop finishes, the smallest element is printed. return 0;: The program returns 0 to indicate successful execution.

Summary

  • It first asks the user for the number of elements (n) in the array.
  • Then it allows the user to input the n elements into the array.
  • It finds the smallest element in the array by comparing each element with the current minimum.
  • Finally, it prints out the smallest element found.

Output

user@computer$ : enter the limit 5
enter the elements a[0]2
a[1]3
a[2]1
a[3]3
a[4]5
THE SMALLEST ELEMENT IS 1

Click here to get the algorithm and the code in C for merging two arrays.

Click here to get the algorithm and the code in C for reversing all the elements of an array ( array reversal)

Leave a Comment

Your email address will not be published. Required fields are marked *