Онлайн компилятор C

#include <stdio.h> #define n 10 int main(void) { int arr[n]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } int min = arr[ 0 ]; for (int i = 0; i < n; i++) { if (arr[ i ] > min){ min = arr[i]; } } int max = arr[ 0 ]; for (int i = 0; i < n; i++) { if (max<=min&&i>max){ max = arr[i]; } } printf("%d \n", max); return 0; }
1) Этот код считывает 10 целых чисел в массив, затем пытается найти минимальный и максимальный элементы, но содержит логические ошибки в условиях поиска.

2) 
- Внимательно проверь условие в первом цикле поиска «минимума» — там стоит знак `>`, что на самом деле ищет максимальный элемент.
- Во втором цикле поиска «максимума» условие `max<=min&&i>max` сравнивает индекс `i` со значением `max`, что бессмысленно, и начальное значение `max` равно первому элементу, но затем оно сравнивается с `min`, который уже перезаписан.