Visualizzazione dei risultati da 1 a 5 su 5

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    3

    Problema Gestione anagrafica con liste con Dev C

    Salve, sono nuovo del forum e mi scuso in anticipo per la fretta di avere notizie riguardo a quello che chiederò.
    Il problema riguarda la creazione di una gestione anagrafica con liste. Ho già scritto il codice ma il problema riscontrato è dovuto ad un errore di runtime dopo aver correttamente compilato. Non riscontro errori di sintassi ma continuo ad avere difficoltà nella comprensione dell'errore generato.
    Di seguito riporto quanto redatto:


    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <malloc.h>
    
    
    #define OUT 100
    
    
    struct elemento{
           int codfisc;
           struct elemento *pun;
           };
           
    struct elemento *creaLista();
    void visLista(struct elemento *);
    struct elemento *paus=0;
    int i=0;
    main()
    {
          int scelta;
         char invio;
         struct elemento *punLista;
         while(scelta!=OUT){
             system("cls");
             printf("\n\n\t\t  ANAGRAFE");
             printf("\n\n  1. Immissione persona");
             printf("\n\n  2. Cancellazione persona");
             printf("\n\n  3. Ricerca persona");
             printf("\n\n  4. Visualizza anagrafe"); 
             printf("\n\n  0. Fine");   
             printf("\n\n\n  Scegliere una opzione\n");   
             scanf("%d", &scelta);
             scanf("%c", &invio);
             printf("\n\n\n");
             switch(scelta) {
                 case 0:
                      scelta=OUT;
                      break;
                 case 1:
                      i=i+1;
                      printf("%d",i);
                      punLista=creaLista();
                      break;
                 case 2:
                      //canPer();
                      break;
                 case 3:
                      //ricPer();
                      break;
                 case 4:
                      visLista(punLista);
                      break;
                      }
                      }
    
    
    }
    
    
    
    
    
    
    struct elemento *creaLista()
    {
           struct elemento *p,*paus;
          
     
           if(i==1){
                p=(struct elemento*)malloc(sizeof(struct elemento));
                printf("Inserisci il codice fiscale della 1a persona:\n");
                scanf("%d", &p->codfisc);
                paus=p;}
           if(i>1){
                paus->pun=(struct elemento *)malloc(sizeof(struct elemento));
                paus=paus->pun;
                printf("Inserisci il codice fiscale della %da persona::\n", i);
                scanf("%d", &paus->inf);} 
    return(p);              
    }
    
    
    
    
    void visLista(struct elemento *p)
    {
         char invio;
         printf("punLista --->");
         while(p!=NULL){
                        printf("%d\n", p->inf);
                        p=p->pun;
                        printf("premere un tasto per vedere l'elemento successivo");
                        scanf("%c", &invio);
                        }
         printf("NULL\n");
    }

    Sarà ormai la stanchezza ma non riesco a capacitarmene e non ho ormai molto tempo per far capo alle sole mie capacità.
    Grato in anticipo porgo cordiali saluti.
    Ultima modifica di LeleFT; 12-06-2014 a 13:06 Motivo: Aggiunti i tag CODE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.