Ir ao conteúdo

Posts recomendados

Postado

Olá pessoal, estou começando estrutura de dados e estou em dúvida de como eu posso mostrar o passo a passo do bubble sort, o restante já esta tudo OK, só estou com dificuldade de mostrar na tela como é feita a ordenação. Se conseguirem me ajudar e me dar algumas dicas, agradeço desde ja!! xD

#include <stdio.h>
#include <stdlib.h>
#define max 10

void bubble (int *a)
{
//FUNÇÃO BUUBLE SORT
    int x, y, aux;

    for(x=0; x<max; x++)
        for(y=x+1; y<max; y++)
        {
            if(a[y] < a[x])
            {
                aux = a[x];
                a[x] = a[y];
                a[y] = aux;
            }
        }
}

int main(int argc, char** argv)
{
    int vetor[max], x, y, aux;
//ENTRADA DE DADOS
    for(x=0 ; x < max ; x++)
    {
        printf("Entre com o numero %d: ", x+1);
        scanf("%d", &vetor[x]);
    }
//SAIDA DE DADOS
    printf("VETOR!!\n\n");

    for(x=0 ; x < max ; x++)
    {
        printf( "[%d]",vetor[x]);
    }
//MOSTRAR PASSO A PASSO DA FUNÇÃO
    printf("\n\nORDENANDO!!\n\n");

//CHAMADA DA FUNÇÃO PARA MOSTAR O VETOR ORDENADO
    bubble(vetor);
//SAIDA DE DADOS ORDENADOS
    printf("\n\nVETOR ORDENADO!!\n\n");
    for(x=0; x<max; x++)
        printf("[%d]",vetor[x]);
    printf("\n");

    return 0 ;
}
Postado

Não sei se é isso qie você queria, mas aqui mostra alguns dos passos

void bubble (int *a)
{
//FUNÇÃO BUUBLE SORT
    int i, x, y, aux;

    for(x=0; x<max; x++)
    {
        for(y=x+1; y<max; y++)
        {
            if(a[y] < a[x])
            {
                aux = a[x];
                a[x] = a[y];
                a[y] = aux;
            }
        }
        printf("Ordenando posicao %d:\n\t", x);
        for(i=0 ; i < max ; i++)
        {
            printf( "[%d]", a[i]);
        }
        printf("\n");
    }
}

 

Se quiser que ele mostre todos os passos é só colocar dentro do "if(a[y] < a[x])"

Não coloquei porque achei q ia ficar confuso.

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!