C:
void max_array_min(int* array, size_t length,int* max,int* min)
{
int* pend = array + length;
for (;array < pend;array++) {
if(*max < *array)
*max = *array;
}
array = array - length;
*min = *max;
for (;array < pend;array++) {
if (*min > *array)
*min = *array;
}//2 for döngüsüne gerek yok normalde. tek döngüde halledilebilir. fakat kod karmaşası olmasın diye böyle paylaşayım dedim.
}
Pointerlar için bir alıştırma olsun..
Örnek Kullanım :
Kod:
int dizi[] = { 8,100,19,62,11,57,66,78,540,22 };
int maxVal, minVal = 0;
max_array_min(dizi, 10, &maxVal, &minVal);
Son düzenleme: