Ordenación en C/C++ Imprimir
Escrito por adrianvaca   
Martes, 22 de Marzo de 2011 23:09

Ordenación de un arreglo de números en forma ascendente por el método de la burbuja. Le pasas como argumentos a la función el arreglo de numeros y el número de elementos que tiene el arreglo, en este caso son como máximo 50:

void ordenar_numeros(int numeros[50], int total)
{
   int temp;
   int i, j;

   for(i=0; i < total-1; i++)
   {
      for(j=i+1; j < total; j++)
      if(numeros[ i ] > numeros[ j ])
      {
         // Copia en variable temporal datos actuales
         temp = numeros[ i ];

         // Intercambia informacion
         numeros[ i ] = numeros[ j ];

         numeros[ j ] = temp;
      }
   }
}



Ordenación de un arreglo de palabras o cadenas (arreglo bidimensional) en forma ascendente por el método de la burbuja. La ordenación de cadenas difiere un poco de la ordenación de números, pero la técnica es la misma. En este caso se usan funciones de string.h, le pasas como argumentos a la función el arreglo bidimensional y el número de elementos que tiene, en este caso son como máximo 50:

void ordenar_cadenas(char nombres[50][100], int total)
{
   char *temp;
   int i, j;

   for(i=0; i < total-1; i++)
   {
      for(j=i+1; j < total; j++)
      if(strcmp(nombres[ i ], nombres[ j ]) > 0)
      {
         // Copia en variable temporal datos actuales
         strcpy(temp, nombres[ i ]);

         // Intercambia informacion
         strcpy(nombres[ i ], nombres[ j ]);

         strcpy(nombres[ j ], temp);
      }
   }
}



 
Otros artículos