Ciao a tutti. Ho un problema con un funzione che utilizza le liste dinamiche.
Il tipo che ho dichiarato sono questi:
codice:
typedef struct el{
int dato;
struct el*prox;}nodo;
typedef nodo*lista;
il prototipo della funzione è:
codice:
void fattori(int,lista*);
la funzione in se calcola, preso un intero, i suoi divisori; la funzione è:
codice:
void fattori(int val,lista*L){
int i;
lista nuovo,curs;
curs=*L;
for(i=1;i<=val;i++){
if(val%i==0){
nuovo=(lista)malloc(sizeof(nodo));
nuovo->dato=i;
nuovo->prox=NULL;
if(*L==NULL){
*L=nuovo;
printf("%d",i);}
else{
while(curs->prox!=NULL)
curs=(curs->prox);
curs->prox=nuovo;
printf("%d",i);}
}
}}
Se mi spiegate dove sbaglio ve ne sarei davvero grato. Ciao e grazie!!