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.

Rispondi quotando