Customise this topic; samples and ideas available at
TWiki:TWiki.WebLeftBarCookbook.
My links:
edit
#include<stdio.h>
#include<malloc.h>
typedef struct lista
{
int info;
struct lista * next;
}lista;
typedef lista *list;
void ordina(list nodo,list temp,list coda);
int main()
{
list nodo, coda, temp;
coda=(list)malloc(sizeof(lista));
temp=(list)malloc(sizeof(lista));
nodo=coda;
while(temp->info!=9999)
{
scanf("%d",&nodo->info);
temp=nodo;
temp->info=nodo->info;
nodo->next=(list)malloc(sizeof(lista));
nodo=nodo->next;
}
nodo=temp;
printf("ora inserisci un valore al nuovo nodo: ");
scanf("%d",&nodo->info);
nodo->next=NULL;
nodo=coda;
while(nodo!=NULL)
{
printf("%d\n",nodo->info);
nodo=nodo->next;
}
nodo=coda;
printf("ordinata: ");
ordina(nodo,temp,coda);
return 0;
}
void ordina(list nodo,list temp,list coda)
{
list temp2;
temp2=temp;
while(temp->next==nodo->next)
{
if((temp->info)<(nodo->next->info))
{
temp->next=nodo->next;
nodo->next=temp;
}
else
nodo=nodo->next;
}
nodo->next=NULL;
nodo=coda;
while(nodo!=NULL)
{
printf("%d\n",nodo->info);
nodo=nodo->next;
}
}