è la condizione di uscita che è sbagliata probabilmentecodice:void stampadipend() { pfdip=fopen("dipendenti.txt","a"); if(pfdip==NULL) printf("errore apertura file"); else { while(feof(pfdip)==0) { fread(buffdip,sizeof(struct dipend),1,pfdip); pfana=fopen("anagrafe.txt","a"); if(pfana==NULL) printf("errore apertura file"); else { fread(buffana,sizeof(struct anagr),1,pfana); do { if(strcmp(buffdip->coddip,buffana->coddip)==0) { printf("il nome e%s\n",buffana->nome); c=1; } else { fread(buffana,sizeof(struct anagr),1,pfana); } } while((feof(pfana)==0)||(c!=1)); <---- } fclose(pfana); } fclose(pfdip); } }