1)scrive due volte inserisci un carattere...perchè?codice:#include <stdio.h> #include <stdlib.h> struct listelem { char dato; struct listelem *prossimo; }; typedef struct listelem elemlist; typedef elemlist *listadielem; typedef listadielem *puntapunt; void inizializza (puntapunt); void insert(puntapunt,char); void stampa(listadielem); main(){ elemlist *lista; char car='?'; inizializza(&lista); while (car !='.'){ printf("\n inserisci un carattere, punto per terminare\n"); scanf("%c",&car); insert(&lista,car); } stampa(lista); return 0; } void inizializza(puntapunt list){ *list=NULL; } void insert (puntapunt punt, char valore){ elemlist *newpunt; newpunt=(listadielem)malloc(sizeof(elemlist)); newpunt->dato=valore; newpunt->prossimo=*punt; *punt=newpunt; } void stampa(listadielem primo){ elemlist *attuale; attuale= primo; if (attuale==NULL) printf("Lista vuota\n\n"); else { printf("La lista e' \n\n"); while (attuale !=NULL){ printf("%c-->",attuale->dato); attuale=attuale->prossimo; } } }
2)non ci ho capito niente Potete gentilissimissimamente spiegarmi come funziona?