Ir ao conteúdo
  • Cadastre-se

Ordenar alfabeticamente strings


Posts recomendados

Tenho de organizar strings por ordem alfabetica com o bubble sort, tenho o seguinte código:

 

void bubble_sort_crescente_aluno_nome (ALUNO v[], int N)
{
    int i,k;
    char aux[80];
    do
    {
        k=0;
        for(i=0;i<N-1;i++)
            if(strcmp(v.nome,v[i+1].nome)>1)
            {
                strcpy(aux,v.nome);
                strcpy(v.nome,v[i+1].nome);
                strcpy(v[i+1].nome,aux);
                k++;
            }
    }
    while(k!=0);
}

 

ele ordena algumas strings mas outras nao,sera que esta alguma coisa errada na função?

Link para o comentário
Compartilhar em outros sites

strcmp, retorna muitos valores, 

como bem você já deve saber disso, dentre eles também o 1

strcmp(...) > 1... Nesta expressão, exclui se valores inferiores a 2

 

"Para resolver seu problema de código" apenas troque 1 da expressão

por 0, com isso excluísse apenas os inferiores e o 0

da condição. Tente isso !!!

 

Uma observação; eu suponho que  ALUNO é uma estrutura, com campos, daí

seu algoritmo permuta apenas o campo nome, seguindo a sequência alfabética.

O que acontece com os campos restante da estrutura?

 

 

 

:)

Link para o comentário
Compartilhar em outros sites

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...