prova a fare una cosa di questo tipo:
...
while((stampa=fgetc(fp))!=EOF)

//così dovrebbe funzionare
...
un consiglio quando uso la fseek, invece di mettere nell'ultimo parametro la cifra corrispondente all'operazione (inizio,fine o attuale) usa le costanti standard SEEK_END,SEEK_CUR e SEEK_SET tt per questione di portabilità