Поменять минимальный и максимальный элемент местами - C (СИ)
Формулировка задачи:
#include <stdio.h> #include <conio.h> #include<locale.h> int main () { setlocale(LC_ALL,"russian"); float array[1000], sum=0, min,max; int i,n,p=1,k,w,t; printf("Введите размерность массива\n"); scanf("%d",&n); for (i = 0; i<n; i++) { printf("Число %d:", i+1); scanf("%f", &array[i]); } for (i=0; i<n; i++) sum+=array[i]; printf("Сумма чисел введеного массива = %d\n", sum); for (i=0; i<n; i++) p*=array[i]; printf("Произведение элементов массива = %d\n",p); t=0; min=array[0]; for (i=1; i<n; i++){ if (min> array[i]) min= array[i]; t=i; } printf("Минимальный элемент массива = %d\n", min); w=0; max= array[0]; for (i=1; i<n; i++) { if (max< array [i]) max= array [i]; w=i; } printf("Максимальный элемент массива = %d\n", max); array[t]=array[w]; array[w]=array[t]; printf("Измененный массив:\n"); for (i = 0; i<n; i++) { printf("Число %d:%f.0\n",i+1,array[i]); } return 0; }
Решение задачи: «Поменять минимальный и максимальный элемент местами»
textual
Листинг программы
if (min> array[i]) { min= array[i]; t=i; }
Объяснение кода листинга программы
- Входные данные:
- min: начальное значение минимального элемента
- array: массив, в котором нужно поменять местами минимальный и максимальный элементы
- t: переменная для хранения индекса минимального элемента
- Проверка условия:
- min больше текущего элемента массива, который находится на позиции i
- Если условие выполняется, то:
- min присваивается значение текущего элемента массива
- t присваивается значение i, то есть индекс текущего элемента массива
- Код продолжает работу с следующими элементами массива, пока не будет пройден весь массив.
- В конце работы кода, минимальный и максимальный элементы массива поменяются местами, а переменная t будет содержать индекс нового минимального элемента.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д