Questo e il codice del mio programma sulle liste:
#include <stdio.h>
#include <stdlib.h>
typedef struct el
        {
               struct el *back;
               int iValore;
               struct el *next;
        }sLista;
int main(int argc, char *argv[])
{
    sLista *testa; testa=NULL;
    sLista *coda;  coda=NULL;
    sLista *n;     n=NULL;
    sLista *l;     l=NULL;
    int iScelta,i;
         n=malloc(sizeof(sLista));
         printf("Immeti il numero intero: ");
         scanf("%d",&n->iValore);
         getchar();
         testa=n;
         coda=n;
         printf("Vuoi immettere un altro elemento nella lsita: ? (1=SI)--(0=NO)");
         scanf("%d",&iScelta);
         getchar();
         if (iScelta==1)
         {
             do
             {
                  i++;
                  iScelta=0;
                                  //printf("aaaa");
                  n=malloc(sizeof(sLista));
                                  //printf("bbbbb");
                  coda->next=n;
                                  //printf("ccccc");
                  coda=n;
                                  //printf("dddd");
                  printf("Immeti il numero intero: ");
                  scanf("%d",&n->iValore);
                  getchar();
                  printf("Vuoi immettere un altro elemento nella lsita: ? (1=SI)--(0=NO)");
                  scanf("%d",&iScelta);
                  getchar();
              
               }while(iScelta==1);
                          
               l=testa;
               printf("----INIZIO LISTA----");
               for(;l->next!=NULL;l=l->next)
               {    
                    printf("%d",l->iValore);
                    printf("a");
               }
               printf("----FINE LISTA----");
               getchar();
               *exit(1);
               /*
               while(l->next!=NULL)
               {
                   printf("%d",l->iValore);
                   l=l->next;
               }
               printf("----FINE LISTA----");
               exit(1);
               */
         }
         else
         {
               l=testa;
               printf("----INIZIO LISTA----\n");
               for(;l->next!=NULL;l=l->next)
               {
                    printf("%d",l->iValore);
               }
               printf("----FINE LISTA----");
               getchar();
               exit(2);
             
         }  
  system("PAUSE");	
  return 0;
}
il problema e che mandandolo in esecuzione alla fine mi stampa : inizio lista, la lsita (valori int), e mentre fine lista non me lo stampa, penso che ci sia un errore nel for pero non so. 
                   grazie in anticipo.