Originariamente inviato da oregon
1) Dato che le stringhe sono fatte da più parole, usa la fgets e non la fscanf

2) Per la fscanf si passa il "puntatore" al dato ... con il &

codice:
   fgets(guida.titolo, 100, stream);
   fgets(guida.autore, 50, stream);
   fscanf(stream, "%d\n%f\n", &guida.anno_pubblicazione, &guida.prezzo);

   printf("%s%s%d\n%2.2f\n", guida.titolo,guida.autore,guida.anno_pubblicazione,guida.prezzo) ;

P.S. Fai attenzione al titolo e al regolamento .... non usi da poco nel forum ...
Perfetto.
Molte grazie