Определить три максимальных и два минимальных значения этого массива - C (СИ)
Формулировка задачи:
Дано натуральное число N (N> 5) и одномерный массив A1, A2, ..., AN символьных элементов. Определить три максимальных и два минимальных значения этого массива.
Решение задачи: «Определить три максимальных и два минимальных значения этого массива»
textual
Листинг программы
#include <stdio.h> #include <limits.h> #define N 10 int main() { int a[N] = {6,8,20,7,3,1,20,45,-6,-5}; int i; int max1,max2,max3; int min1,min2; max1 = max2 = max3 = INT_MIN; min1 = min2 = INT_MAX; for (i=0; i<N; i++) { if (a[i]>max1 && a[i]>max2 && a[i]>max3) { max3 = max2; max2 = max1; max1 = a[i]; } else if (a[i]<max1 && a[i]>max2) { max3 = max2; max2 = a[i]; } else if (a[i]<max1 && a[i]<max2 && a[i]>max3) max3 = a[i]; if (a[i]<min1 && a[i]<min2) { min2 = min1; min1 = a[i]; } else if (a[i]>min1 && a[i]<min2) min2 = a[i]; } printf ("Max: %d %d %d\n",max1,max2,max3); printf ("Min: %d %d\n",min1,min2); return 0; }
Объяснение кода листинга программы
- Объявлен массив
a
типа int размером N = 10 и инициализирован значениями: {6,8,20,7,3,1,20,45,-6,-5}. - В цикле for перебираются все элементы массива
a
. - Переменные max1,max2,max3 инициализированы значением INT_MIN, что является наименьшим значением для типа int.
- Переменные min1,min2 инициализированы значением INT_MAX, что является наибольшим значением для типа int.
- Если текущий элемент массива
a
больше max1 и max2 и max3, то он становится max3, max2, max1 соответственно. - Если текущий элемент массива
a
меньше max1 и больше max2, то он становится max3, max2, max1 соответственно. - Если текущий элемент массива
a
меньше max1 и max2 и больше max3, то max3 становится равным текущему элементу. - Если текущий элемент массива
a
меньше min1 и min2, то min2 становится равным min1, а min1 становится равным текущему элементу. - Если текущий элемент массива
a
больше min1 и меньше min2, то min2 становится равным текущему элементу. - После завершения цикла, в переменной max1,max2,max3 содержатся три максимальных значения массива
a
. - В переменной min1,min2 содержатся два минимальных значения массива
a
. - Выводится строка
Max: %d %d %d\n
, в которую подставляются значения max1,max2,max3. - Выводится строка
Min: %d %d\n
, в которую подставляются значения min1,min2. - Возвращается 0, что означает успешное завершение работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д