fork download
  1. #include <stdio.h>
  2. #include <limits.h> // For INT_MIN
  3.  
  4. int main() {
  5. int n;
  6.  
  7. // Get the size of the array from the user
  8. printf("Enter the number of elements in the array: ");
  9. scanf("%d", &n);
  10.  
  11. // Declare a single-dimensional array of size n
  12. int arr[n];
  13.  
  14. // Read elements into the array
  15. printf("Enter %d integers:\n", n);
  16. for (int i = 0; i < n; i++) {
  17. printf("Element %d: ", i + 1);
  18. scanf("%d", &arr[i]);
  19. }
  20.  
  21. // Handle edge cases for arrays with less than 2 elements
  22. if (n < 2) {
  23. printf("Cannot find the second largest element for an array with less than 2 elements.\n");
  24. return 0;
  25. }
  26.  
  27. // Initialize largest and second largest
  28. int largest = INT_MIN;
  29. int secondLargest = INT_MIN;
  30.  
  31. // Find the largest and second largest elements
  32. for (int i = 0; i < n; i++) {
  33. if (arr[i] > largest) {
  34. secondLargest = largest; // Current largest becomes second largest
  35. largest = arr[i]; // New largest
  36. } else if (arr[i] > secondLargest && arr[i] != largest) {
  37. secondLargest = arr[i]; // Update second largest
  38. }
  39. }
  40.  
  41. // Print the second largest element
  42. if (secondLargest == INT_MIN) {
  43. printf("There is no distinct second largest element (e.g., all elements are the same).\n");
  44. } else {
  45. printf("The second largest element in the array is: %d\n", secondLargest);
  46. }
  47.  
  48. return 0;
  49. }
Success #stdin #stdout 0.01s 5288KB
stdin
43
stdout
Enter the number of elements in the array: Enter 43 integers:
Element 1: Element 2: Element 3: Element 4: Element 5: Element 6: Element 7: Element 8: Element 9: Element 10: Element 11: Element 12: Element 13: Element 14: Element 15: Element 16: Element 17: Element 18: Element 19: Element 20: Element 21: Element 22: Element 23: Element 24: Element 25: Element 26: Element 27: Element 28: Element 29: Element 30: Element 31: Element 32: Element 33: Element 34: Element 35: Element 36: Element 37: Element 38: Element 39: Element 40: Element 41: Element 42: Element 43: The second largest element in the array is: 1954237269