C :: Aufgabe #4 :: Lösung #1
3 Lösungen

#4
Funktion welche Minimum und Maximum aus einem Array zurückgibt
Anfänger - C
von Gustl
- 07.12.2012 um 17:36 Uhr
Programmieren Sie eine Funktion welche aus einem Array von Integer-Elementen das Minimum und Maximum zurückgibt.
Als Übergabe-Parrameter wird das Array übergeben.
Testen Sie die Funktion mit 2 Abfragen, bzw. mit 2 verschiedenen Arrays.
Hilfestellung: Sortierverfahren - Wikipedia
Als Übergabe-Parrameter wird das Array übergeben.
Testen Sie die Funktion mit 2 Abfragen, bzw. mit 2 verschiedenen Arrays.
Hilfestellung: Sortierverfahren - Wikipedia
#1

von devnull (8870 Punkte)
- 01.07.2013 um 20:19 Uhr

/**************************************** * min_max.c Min/Max aus Integer-Array * * OS : GNU/Linux * compile: gcc -Wall -o min_max min_max.c * * devnull 01-07-2013 ****************************************/ #include <stdlib.h> #include <stdio.h> #include <limits.h> #include <time.h> void min_max( int *pa, int n, int *pmin, int *pmax ) { int imin=INT_MAX; int imax=INT_MIN; int i; for (i=0;i<n;i++,pa++) { imin = (*pa < imin)?*pa:imin; imax = (*pa > imax)?*pa:imax; } *pmin=imin; *pmax=imax; } void print_array( int *pa, int n ) { int i; for (i=0;i<n;i++,pa++) printf("%d ", *pa); printf("\n"); } /* main */ int main( void ) { int arr[] = {4,3,2,1,0,-1,-2,-3,-4,-5}; int anz=sizeof(arr)/sizeof(int); int min,max,i; print_array( arr,anz ); min_max( arr, anz, &min, &max ); printf("Min=%d , Max=%d\n\n", min,max ); srand(time(NULL)); for (i=0;i<anz;i++) arr[i] = rand() % 1000; print_array( arr,anz ); min_max( arr, anz, &min, &max ); printf("Min=%d , Max=%d\n\n", min,max ); return 0; }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1