#include <iostream>
#include <climits>
void print3largest(int arr[], int size) {
if (size < 3) {
std::cout << "array size < 3";
return;
}
int first, second, third;
third = first = second = INT_MIN;
for (int i = 0; i < size ; i ++) {
if (arr[i] > first) {
third = second;
second = first;
first = arr[i];
}
else if (arr[i] > second) {
third = second;
second = arr[i];
}
else if (arr[i] > third)
third = arr[i];
}
std::cout << "The three largest elements are: " << first << " " << second << " " << third;
}
int main()
{
int arr[] = {5, 2, 9, 6, 12, 7, 8, 3, 1, 0};
int size = sizeof(arr)/sizeof(arr[0]);
print3largest(arr, size);
return 0;
}
/*
run:
The three largest elements are: 12 9 8
*/