danny2005
31-03-2006, 10:14
Devo inserire la struttura:
struct elemento {
char cognome[20];
int num_servizi;
struct elemento *next;
};
in una lista ordinata per cognome; la funzione controlla se è già presente l'elemento: se esiste incrementa la variabile num_servizi, altrimenti lo inserisce nella giusta posizione; ecco la funzione:
void in_lista_ordinata(struct elemento **head, struct elemento ** element)
{
struct elemento *prec, *curr;
prec=NULL;
curr=*head;
while(curr != NULL && strcmp(curr->cognome, *element->cognome) <=0)
{
if(strcmp(curr->cognome, *element->cognome)=0)
(curr->num_servizi)++;
else
{ prec=curr;
curr=curr->next;
}
}
if(prec=NULL)
{
*element->next= *head;
*head= *element;
}
else
{
prec->next= *element;
*element->next= curr;
}
}
Pareri?
struct elemento {
char cognome[20];
int num_servizi;
struct elemento *next;
};
in una lista ordinata per cognome; la funzione controlla se è già presente l'elemento: se esiste incrementa la variabile num_servizi, altrimenti lo inserisce nella giusta posizione; ecco la funzione:
void in_lista_ordinata(struct elemento **head, struct elemento ** element)
{
struct elemento *prec, *curr;
prec=NULL;
curr=*head;
while(curr != NULL && strcmp(curr->cognome, *element->cognome) <=0)
{
if(strcmp(curr->cognome, *element->cognome)=0)
(curr->num_servizi)++;
else
{ prec=curr;
curr=curr->next;
}
}
if(prec=NULL)
{
*element->next= *head;
*head= *element;
}
else
{
prec->next= *element;
*element->next= curr;
}
}
Pareri?