Ver Mensaje Individual
  #5 (permalink)  
Antiguo 22/04/2010, 21:26
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Problemas para ordenar numeros

Hey eso es C#

Pero bueno, pueden usar qsort (función estándar en stdlib) para ordenar sus arreglos. En vez de implementar algún algoritmo ineficiente (burbuja).
Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int cmp_func_asc(const void *a, const void *b){
  5.     return (*(int*)a) - (*(int*)b);
  6. }
  7.  
  8. int cmp_func_des(const void *a, const void *b){
  9.     return (*(int*)b) - (*(int*)a);
  10. }
  11.  
  12. void nice_print(int arr[], int size){
  13.     int i;
  14.     printf("{");
  15.     for(i = 0; i < size; i++)
  16.         if(i != (size - 1))
  17.             printf("%d, ", arr[i]);
  18.         else
  19.             printf("%d", arr[i]);
  20.     printf("}\n");
  21. }
  22.  
  23. int main(){
  24.     int n = 10;
  25.     int arr[10] = {9, 6, 7, 2, 5, 8, 0, 1, 3, 4};
  26.     int i;
  27.  
  28.     /*Nice print*/
  29.     nice_print(arr, n);
  30.  
  31.     /*Sort*/
  32.     qsort(arr, n, sizeof(int), cmp_func_asc);
  33.  
  34.     /*Nice print*/
  35.     nice_print(arr, n);
  36.  
  37.     /*Sort*/
  38.     qsort(arr, n, sizeof(int), cmp_func_des);
  39.  
  40.     /*Nice print*/
  41.     nice_print(arr, n);
  42.  
  43.     return 0;
  44. }