Упорядочить массив а (50) в порядке убывания методом попарно-обменной перестановки - C (СИ)
Формулировка задачи:
Не могу найти ошибку в программе. Задание такое: упорядочить массив а(50) в порядке убывания методом попарно-обменной перестановки.
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main ()
{
int A[50],i,vsp,j;
srand(time(0));
printf("array A:\n");
for(i=0;i<50;i++)
{
A[i]=-50+rand()%101;
printf("%5d",A[i]);
}
printf("\narray A:\n");
for(i=0;i<50;i++)
{
for(j=50;j>1;j--)
if(A[j-1]>A[j])
{
vsp=A[j];
A[j]=A[j-1];
A[j-1]=vsp;
}
printf("%5d",A[i]);
}
return 0;
}Решение задачи: «Упорядочить массив а (50) в порядке убывания методом попарно-обменной перестановки»
textual
Листинг программы
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main ()
{
int A[50],i,vsp,j;
srand(time(0));
printf("array A:\n");
for(i=0;i<50;i++)
{
A[i]=-50+rand()%101;
printf("%5d",A[i]);
}
printf("\narray A:\n");
for(i=1;i<50;i++)
{
for(j=50-1;j>i;j--)
if(A[j-1]>A[j])
{
vsp=A[j];
A[j]=A[j-1];
A[j-1]=vsp;
}
printf("%5d",A[i]);
}
return 0;
}
Объяснение кода листинга программы
Код представлен на языке C и выполняет следующие действия:
- Создает массив A типа int размером 50.
- Инициализирует значения массива A случайными числами от -50 до 50.
- Выводит на экран исходный массив A в формате:
array A:\n- название переменной, за которой следует заполнение массива значениями через пробел. - Применяет метод попарно-обменной перестановки для сортировки массива A в порядке убывания.
- Выводит на экран отсортированный массив A в формате:
array A:\n- название переменной, за которой следует заполнение массива значениями через пробел. - Возвращает 0, завершая работу программы.