#include <stdio.h>
#include <limits.h>
int findSecondLargest(int arr[], int size) {
int first, second;
first = second = INT_MIN;
for (int i = 0; i < size; i++) {
if (arr[i] > first) {
second = first;
first = arr[i];
} else if (arr[i] > second && arr[i] != first) {
second = arr[i];
}
}
return (second == INT_MIN) ? -1 : second;
}
int main() {
int arr[] = {42, 7, 93, 58, 29, 61, 17, 84, 36, 75};
int size = sizeof(arr) / sizeof(arr[0]);
int secondLargest = findSecondLargest(arr, size);
if (secondLargest == -1) {
printf("There is no second largest element\n");
} else {
printf("The second largest element is %d\n", secondLargest);
}
return 0;
}
/*
run:
The second largest element is 84
*/