![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
22/03/2005, 09:13
|
| | Fecha de Ingreso: noviembre-2004
Mensajes: 28
Antigüedad: 20 años, 2 meses Puntos: 0 | |
Ok, ahí va el programa entero :-) #include<stdio.h>
#include<conio.h>
#include<alloc.h>
visualizar();
clasificar();
struct nodo
{
short n;
struct nodo *sig;
};
short aux;
struct nodo *nuevo, *ultimo, *primero=0;
void main(void)
{
clrscr();
printf("Introducir numero o 0 para terminar: ");
scanf("%d",&aux);
while(aux!=0)
{
nuevo=(struct nodo*)malloc(sizeof(struct nodo));
nuevo->n=aux;
nuevo->sig=0;
if(primero==0)
{
primero=nuevo;
ultimo=nuevo;
}
else
{
ultimo->sig=nuevo;
ultimo=nuevo;
}
clrscr();
printf("Introducir numero o 0 para terminar: ");
scanf("%d",&aux);
}
clasificar();
visualizar();
}
clasificar()
{
short sw;
do
{
for(nuevo=primero,sw=0;nuevo->sig!=0;nuevo=nuevo->sig)
{
ultimo=nuevo->sig;
if(nuevo->n > ultimo->n)
{
aux=ultimo->n;
ultimo->n=aux;
sw=1;
}
}
}
while(sw==1);
}
visualizar()
{
for(nuevo=primero;nuevo!=0;nuevo=ultimo)
{
printf("%d ",nuevo->n);
ultimo=nuevo->sig;
free(nuevo);
}
} |