viernes, 16 de septiembre de 2011

Ordenar cadenas

Ordena un arreglo de cadenas de caracteres


#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include "cstring"
using namespace std;

void main()
{
char cad[20][100];//20 cadenas de 100 caracteres cada una!

int n;

cout<<"ORDENAMIENTO DE CADENAS"<<endl<<endl;

do{
cout<<"Cantidad de cadenas (hasta 20): ";cin>>n;
}while(n<=0 || n>20);

cout<<endl;

for(int i=0;i<n;i++)
{
cout<<"Cad "<<i+1<<": ";cin>>cad[i];
}

//Método de la Burbuja
for(int i=0;i<n-1;i++)
{
for(int j=i+1;j<n;j++)
{
//Comparar caracter por caracter para determinar qué cadena es mayor
if(strcmp(cad[i],cad[j])>0)//Si la condicion se cumple retorna 1, sino 0
{
//Esta funcion copia una cadena en otra
char cadTemp[100];
strcpy_s(cadTemp,cad[i]);
strcpy_s(cad[i],cad[j]);
strcpy_s(cad[j],cadTemp);
}
}
}

cout<<endl<<"Listado ordenado alfabeticamente:"<<endl<<endl;

for(int i=0;i<n;i++)
cout<<"Cad["<<i+1<<"] : "<<cad[i]<<endl;

_getch();
}

No hay comentarios:

Publicar un comentario