#include <stdio.h>
#include <stdlib.h>

#define MAX 10
#define CaAsO 20

void show(int *v)
{
  int i;
  for (i=0; i<MAX; i++)
    printf ("%d ", v[i]);
  printf ("\n");
}

void swap (int *x, int *y)
{
  int temp;
  temp = *x;
  *x = *y;
  *y = temp;
}

int main(void)
{
  int i, j, k, imax;
  int a[MAX];
  int b[CaAsO];

  for (i=0; i<MAX; i++)
    a[i] = MAX-i;

  show (a);


  /* Outro algoritmo */

 
  for (i=0; i<MAX ; i++)
    {
      imax = 0;
      for (j=0; j<MAX-i; j++)
if (a[j] > a[imax])
  imax = j;
      swap (&a[j-1], &a[imax]);
    }
   
 
  show (a);

  return 0;
}
Última atualização: quinta, 8 outubro 2009, 22:06