Ordenar vetor - ordenação bolha
Publicado por Rodrigo Zanuzzo (última atualização em 11/06/2010)
[ Hits: 14.365 ]
Homepage: @rodrigozanuzzo
Ordena um vetor em ordem crescente ou decrescente usando um método de ordenação tipo bolha.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void ordenarD(int p[10]);
void ordenarC(int p[10]);
int vetor[10]={3,5,2,1,6,4,9,8,7,10};
int main(){
int op;
printf("\n1-Ordenar crescente");
printf("\n2-Ordenar decrescente");
printf("\n3- Sair\n");
scanf("%d",&op);
switch(op){
case 1:{
ordenarC(vetor);
break;
}
case 2:{
ordenarD(vetor);
break;
}
case 3:{
exit (0);
}
default: {
printf("\nOpcao invalida");
break;
}
}
int i=0;
for(i;i<10;i++){
printf("\n%d ",vetor[i]);
}
getch();
system("clear");
main();
}
void ordenarD(int p[10]){
int AUX;
int i;
int trocou;
int qtd=10;
do{
qtd--;
trocou = 0;
for(i = 0; i < qtd; i++)
if(p[i] < p[i+1]){
AUX=p[i+1];
p[i+1]=p[i];
p[i]=AUX;
trocou=1;
}
}while(trocou);
}
void ordenarC(int p[10]){
int AUX;
int i;
int trocou;
int qtd=10;
do{
qtd--;
trocou = 0;
for(i = 0; i < qtd; i++)
if(p[i] > p[i+1]){
AUX=p[i+1];
p[i+1]=p[i];
p[i]=AUX;
trocou=1;
}
}while(trocou);
}
Escrevendo um arquivo Unicode em C#
Como fazer raízes a partir de 2 e 3 no c.
[C++] remover todos os multiplos de 3
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Habilitando "hotcorner" no Ubuntu
Zen Kernel no Arch Linux (instalar e remover)
Como instalar e remover o kernel Liquorix
Fazendo o controle de Xbox 360 USB funcionar no One Piece Pirate Warriors 4 (Arch Linux/Steam)









