Пузырьковая сортировка, в чем ошибка? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Скажите, пожалуйста, в чем моя ошибка?
int main()
{
    int n,*a,c,j,i;
    scanf("%d",&n);
    a=(int*)malloc(n*sizeof(int));
    for(i=0;i<n;i++)scanf("%d",&a[i]);
    for(i=0;i<n-1;i++)
    {
       for(j=a-1;j>=0;j--)
       {
           if(a[i]<a[i+1])
           {
               c=a[i];
               a[i]=a[i+1];
               a[i+1]=c;
           }
       }
    }
    printf("%d",a[j]);
    return 0;
}

Решение задачи: «Пузырьковая сортировка, в чем ошибка?»

textual
Листинг программы
void bubbleSort(int a[], long size) {
  long i, j;
  int x;
 
  for( i=0; i < size; i++) { // i - номер прохода
    for(j=size-1;j>i;j--){  // внутренний цикл прохода
      if ( a[j-1] > a[j] ) {
      x=a[j-1]; a[j-1]=a[j]; a[j]=x;
    }
  }
}
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5
Похожие ответы