Min/Max
Napisati funkciju koja vraća i minimum i maksimum niza jednim prolaskom kroz niz.
Ulaz
Sa standardnog ulaza se učitava broj
Izlaz
Na standardni izlaz ispisati minimalni element i maksimalni element niza.
Primer
Ulaz
10
4 2 7 0 5 9 8 3 6 1
Izlaz
0 9
Rešenje
main.c
#include <stdio.h>
#include <stdlib.h>
void min_max(int *arr, int n, int *min, int *max)
{
*min = arr[0];
*max = arr[0];
for (size_t i = 1; i < n; i++) {
if (arr[i] < *min) *min = arr[i];
if (arr[i] > *max) *max = arr[i];
}
}
int main(void)
{
size_t n;
scanf("%zu", &n);
int *arr = malloc(n * sizeof (int));
if (arr == NULL) {
exit(EXIT_FAILURE);
}
for (size_t i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
int min, max;
min_max(arr, n, &min, &max);
printf("%d %d\n", min, max);
free(arr);
exit(EXIT_SUCCESS);
}