#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`, который уже перезаписан.