Skip to main content

Featured

C Pattern Programs: Square Number and Alphabet Patterns Explained

πŸ”· Square Star Pattern πŸ“‹ Copy Code #include <stdio.h> int main() { int num; printf("Enter the number:\n"); scanf("%d", &num); for(int i = 1; i <= num; i++) { for(int j = 1; j <= num; j++) { printf("* ");//keep"* " } printf("\n"); } return 0; } πŸ”· Reverse Square Alphabet Pattern (Column-wise) πŸ“‹ Copy Code #include <stdio.h> int main() { int num; printf("Enter the number:\n"); scanf("%d", &num); for(int i = num; i >= 1; i--) { for(int j = num; j >= 1; j--) { printf("%c ", j + 64);//%c for Character and 64 will be ASIIC VALUE } printf("\n"); } return 0; } πŸ”· Reverse Square Alphabet Pattern (Row-wise) πŸ“‹ Copy Code #include <stdio.h> int main() { int num; ...

Find Second Largest Element and Second Largest Element in Array in C

C Program: Find Second Largest Element in Array

πŸ”· C Program: Find Second Largest Element in Array

#include <stdio.h>

int main()
{
    int num;
    printf("Enter the number of elements in the array: ");
    scanf("%d", &num);

    if (num < 2)
    {
        printf("Need at least two elements to find second largest>\n");
        return 0;
    }

    int a[num];
    printf("Enter the elements of the array: ");
    for (int i = 0; i < num; i++)
    {
        scanf("%d", &a[i]);
    }

    int first, second;

    if (a[0] > a[1])
    {
        first = a[0];
        second = a[1];
    }
    else if (a[0] < a[1])
    {
        first = a[1];
        second = a[0];
    }
    else
    {
        first = second = a[0];
    }

    for (int i = 2; i < num; i++)
    {
        if (a[i] > first)
        {
            second = first;
            first = a[i];
        }
        else if (a[i] > second && a[i] != first)
        {
            second = a[i];
        }
    }

    printf("The largest element is: %d\n", first);
    if (first == second)
    {
        printf("There is no second largest element (all same or repeated).\n");
    }
    else
    {
        printf("The second largest element is: %d\n", second);
    }

    return 0;
}
  

πŸ“˜ Explanation:

This program finds the second largest element in a user-provided integer array.

πŸ”Ή First, it checks whether the number of elements is at least 2, because a second largest cannot exist with fewer elements.

πŸ”Ή Then, it compares the first two elements to initialize the variables first and second.

πŸ”Ή As it iterates through the array, it keeps updating first if a larger number is found, and moves the old first into second.

πŸ”Ή It also ensures that second is not equal to first by checking a[i] != first to avoid duplicate max values.

πŸ”Ή Finally, it prints both the largest and second largest, or a message indicating no distinct second largest exists.

πŸ” Sample Output:

Enter the number of elements in the array: 5
Enter the elements of the array: 10 30 20 30 5
The largest element is: 30
The second largest element is: 20

Enter the number of elements in the array: 3
Enter the elements of the array: 40 40 40
The largest element is: 40
There is no second largest element (all same or repeated).
    

🏷️ Keywords:

second largest number in array, largest number C program, array maximum element, array sorting C, C beginner programs, C programming examples

Comments

Popular Posts

πŸŒ™