C Program to find Second Largest element in the array
Get array size n and n elements of array, then find the second largest element among those elements.
Sample Input 1:
5 5 7 9 3 1
Sample Output 1:
7
Try your Solution
Strongly recommended to Solve it on your own, Don't directly go to the solution given below.
#include<stdio.h>
int main()
{
//write your code here
}
Program or Solution
#include<stdio.h>
#include<stdlib.h>
#include<limits.h>
int main()
{
int *a,n,i,max,second_max;
printf("Enter size of array:");
scanf("%d",&n);
a=malloc(sizeof(int)*n);
printf("Enter %d Elements:",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
max=INT_MIN;
second_max=INT_MIN;
for(i=0;i<n;i++)
{
if(a[i]>max)
{
second_max=max;
max=a[i];
}
else if(a[i] > second_max && a[i]!=max)
{
second_max=a[i];
}
}
printf("%d",second_max);
return 0;
}
Program Explanation
Initialize max and second_max with INT_MIN(INT_MIN is constant holds minimum integer value) visit every node in the array a) If the current element in array a[i] is greater than max.
Then update max and second_max as, second_max = max max = arr[i] b) If the current element is lesser than max and greater than second_max, then update second_max to store the value of current variable as second_max = arr[i] print the value stored in second_max.
Comments
Related Programs
- C Program to get and print the array elements
- C Program to find the sum of array elements
- C Program to find the sum and average of array Elements
- C Program to Search an Element in an array
- C Program to find Largest element in the array
- C Program to find Smallest element in the array
- C Program to print all the numbers which are less than given key element from a given array.
- C Program to find Second smallest element in the array
- C Program to delete an element in an array
- C Program to Reverse the Elements in array
- C Program to reverse the first half of array elements
- C Program to reverse the second half of array elements
- C Program to Sort the Elements in ascending order
- C Program to Sort the Elements in descending order
- C Program to sort half of the Array elements in ascending order and next half in descending order
- C Program to Merging two arrays
- C Program to replace every element with the greatest element on right side
- C Program to perform circular Array Rotation
- C Program to add two matrix
- C Program to multiply two matrix
- C Program to transpose the Matrix
coming Soon
coming Soon