C Program to find Smallest element in the array using pointers

Description

Get array size n and n elements of array, then find the smallest element among those elements.
Input:
5
5 7 9 3 1
Output:
1

Solution

#include<stdio.h>
#include<stdlib.h>
int main()
{
	int *a,n,i,min;
	printf("Enter size of array:");
	scanf("%d",&n);

	a=calloc(sizeof(int),n);
	printf("Enter %d Elements:",n);
	for(i=0;i<n;i++)
	{
		scanf("%d",a+i);
	}
	
	min=*a;
	
	for(i=1;i<n;i++)
	{
		if(*(a+i)<min)
		{
			min=*(a+i);
		}
		
	}

	printf("%d",min);
	return 0;		
}

We are Teaching "Web Development using Python" through Online.

View Tutor Profile and Course Syllabus

Explanation

calloc() is predefined function allocates memory of specified bytes.
Number of bytes is specified as (4,n), it means n 4 bytes. Since we are using integers, specified as 4bytes.

*a denotes first four bytes,  *(a+1) denotes second four bytes, *(a+2) denotes third four bytes and so on.,
i is initialized to 0 and incremented by 1 at each iteration of both the for loops.

First for loop reads n input numbers from user and stores them in array a[] from location 0 to n-1

Initially assign the element located at 0 to max using min =*a.

using second for loop visit each  location serially from 1 to n-1. if the element located in any position is lesser than min,  then assign the element as max by using min = *(a+i)

finally min holds the minimum value in the list.
Ramesh P Natarajan

Author - Ramesh P Natarajan

Software Developer and Technology Trainer, very much passionate in the field of Software Application Development, Machine Learning and Search Engine Optimization.

Write to: [email protected]





Interesting Pattern Programs: for more Patterns

Input:
5
Output:
*
**
***
****
*****
****
***
**
*Solution
Input:
5
Output:
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *Solution
Input:
5
Output:
*        *
**      **
***    ***
****  ****
**********Solution
Input:
5
Output:
*       *
**     **
***   ***
**** ****
*********Solution
Input:
5
Output:
*       *
**     **
***   ***
**** ****
*********
**** ****
***   ***
**     **
*       *Solution
Input:
5
Output:
*********
 *******
  *****
   ***
    *
   ***
  *****
 *******
*********Solution