Поменять местами минимальный и максимальный элементы массива размера 10 - C (СИ)
Формулировка задачи:
Можете подсказать где ошибка просто здесь вообще не меняет местами
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
main()
{
int a[10],i,max,min,r;
printf("\n vvedite elementy massiva \n");
for(i=0;i<10;i++)
{
a[i]=rand()%100-50;
scanf("%d",&a[i]);
}
max=a[0];
for (i=0;i<10;i++)
if (a[i]>max)
max=a[i];
min=a[0];
for (i=0;i<10;i++)
if (a[i]<min)
min=a[i];
for (i=0;i<10;i++)
r=max;
max=min;
min=r;
for (i=0;i<10;i++)
printf("%d",a[i]);
getch();
}Решение задачи: «Поменять местами минимальный и максимальный элементы массива размера 10»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
main()
{
int a[10],i,max,min,r,min_index,max_index;
printf("\n elementy massiva \n");
for(i=0;i<10;i++)
{
a[i]=rand()%100-50; //заполняем массив
printf("%d ",a[i]); //выводим элементы массива
}
max=a[0]; // принимаем за максимальный элемент
max_index=0; // принимаем что макс элемент в массиве под индексом 0
for (i=0;i<10;i++)
if (a[i]>max)
{
max=a[i];
max_index=i; // запоминаем какой индекс у максимального элемента
}
min=a[0];
min_index=0;
for (i=0;i<10;i++)
if (a[i]<min)
{
min=a[i];
min_index=i;
}
r=a[max_index]; //меняем местами макс и мин
a[max_index]=a[min_index];
a[min_index]=r;
printf("\n");
for (i=0;i<10;i++) // вывод измененного массива
printf("%d ",a[i]);
getch();
}