ordenar esto

enanito
08 de Abril del 2005
tengo como 3 semanas tratando de inclurile un ordenamiento, el que sea, a este programita, aclaro el progrma no lo hice yo desde cero, me ayudaron algunas personas como ustedes en los foros, ya no se que hacer y es mi calificacion final si alguien me puede ayudar. aqui esta el codigo.

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

#define MAX 20

void poner (char dato);
char quitar (void);

int ultimo;
char pila [MAX];

void main(void)
{
int x,z;
char temp,dato;

do
{
clrscr();
printf("n");
printf ("nnnn Que operacion desea realizar?");
printf ("nnn 1) Introducir un dato");
printf ("n 2) Quitar un dato");
printf ("n 3) Visualizar los datos de la pila");
printf ("n 4) Salir del programa n");
printf ("nt opcion : ");
scanf("%d",&x);

switch(x)
{
case 1:
clrscr();
printf ("nnAhora introduzca el dato:");
fflush(stdin);
scanf("%c",&dato);
poner (dato);
break;

case 2:
clrscr();
temp=quitar();
printf("El dato eliminado sera: %c",temp);
getch();
break;

case 3:
clrscr();
printf("nLos datos de la pila son: n");

for (z=0;z<=ultimo-1;z++)
printf("n%c", pila[z]);
getch();
break;

case 4:
clrscr();
printf ("nnn El Alex rifa");
sleep(2);
exit(1);
default:
printf("Opcion no valida");
getch();
break;
}
}while(x!=4);
}

void poner (char dato)
{
if (ultimo>MAX)
{
printf ("ERROR OVERFLOW n");
return;
}
pila[ultimo]=dato;
ultimo++;
}

char quitar(void)
{
ultimo--;

if (ultimo<0)
{
printf ("ERROR UNDERFLOW n");
return 0;
}

return(pila[ultimo]);
}

en este codigo no ahi ningun arrglo todavia, este es el codigoantes de que empesara a tratar de intrducrle el arreglo. gracias, de antemano

Enanito