Find Maximum Element Using Pointer Walk

Code

#include <stdio.h>

int find_max_element(int *ptr, int n)
{
    int *max = ptr;
    int *end = ptr + n;   // last limit of array

    for(ptr = ptr + 1; ptr < end; ptr++)
    {
        if(*ptr > *max)
        {
            max = ptr;
        }
    }

    return *max;
}

int main()
{
    int n;
    scanf("%d", &n);

    int arr[100];

    for(int i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }

    int result = find_max_element(arr, n);
    printf("%d", result);

    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

5 10 25 5 30 15

Expected Output

30