Попарный обмен местами между максимальными и минимальными значениями в массиве - C (СИ)
Формулировка задачи:
народ кто может,подсказать что не так со схемой?
вот код
#include <stdio.h> #include <time.h> #include <stdlib.h> int main() { const int N=80; int a[N], i=0, temp, i_max=0, i_min=0; srand(time(NULL)); for (i=0; i<N; i++) { a[i]=rand()%100 +1; printf("%d ",a[i]); } for (i=1; i<N; i++) { if (a[i]>a[i_max]) i_max=i; if (a[i]<a[i_min]) i_min=i; } temp=a[i_max]; a[i_max]=a[i_min]; a[i_min]=temp; printf("\n\n"); for (i=0; i<N; i++) { printf("%d ",a[i]); } return 0; }
Решение задачи: «Попарный обмен местами между максимальными и минимальными значениями в массиве»
textual
Листинг программы
#include <stdio.h> #include <time.h> #include <stdlib.h> #include <limits.h> int main() { const int N = 80; int a[N], i = 0, temp, i_max = 0, i_min = INT_MAX; int p_max, p_min; /* позиции в массиве */ srand(time(NULL)); for (i = 0; i < N; i++) { a[i] = rand() % 100 + 1; printf("%d ", a[i]); } for (i = 1; i < N; i++) { if (a[i] > i_max) { i_max = a[i]; p_max = i; } if (a[i] < i_min) { i_min = a[i]; p_min = i; } } temp = a[p_max]; a[p_max] = a[p_min]; a[p_min] = temp; printf("\n\n"); for (i = 0; i < N; i++) { printf("%d ", a[i]); } return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Объявляем переменные:
N
- размер массиваa
- массив для хранения чиселi
- счётчик для заполнения массива числамиtemp
- временная переменная для обмена значениямиi_max
- индекс максимального значения в массивеi_min
- индекс минимального значения в массивеp_max
- позиция максимального значения в массивеp_min
- позиция минимального значения в массиве
- Инициализируем генератор случайных чисел
- Заполняем массив случайными числами от 1 до 100 и выводим их на экран
- Находим индексы минимального и максимального значений в массиве
- Меняем местами значения по найденным индексам
- Выводим обновлённый массив на экран
- Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д