Como te dijo lareto gran maestro, esta muy bien. =)
 
Yo haría algo así:   
Código C:
Ver original#include <stdio.h>
#include <string.h>
 
typedef struct {
    char marcado;
    char ingles[30];
    char espaniol[30];
} Traductor;
 
int main (){
    FILE * f;
    
    f 
= fopen( "prueba.txt", "w+" );    if (  f == NULL ){
        return 1;
    }
    
    //preparamos una estructura
    Traductor t[5] = {
        { '+', "door", "puerta"},
        { '+', "window", "ventana"},
        { '+', "rueda", "wheel"},
        { '+', "main", "principal"},
        { '+', "out", "salida"}
    };
    
    //grabamos en el fichero la estructura
    int i;
    for ( i = 0; i < 5; i++ ){
        fprintf( f
, "%c %-30s %-30s\n",t
[i
].
marcado, t
[i
].
ingles,t
[i
].
espaniol );         
    }
    
    //volvemos a leer y sacamos lo leido por pantalla
    Traductor temp;
    for ( i = 0; i < 5; i++ ){
        fscanf( f
, /*note el espacio antes de %c y lea el comentario->*/" %c %s %s",&temp.
marcado, temp.
ingles, temp.
espaniol ); // el espacio inicial en la cadena de formato ignora leer el enter que grabamos anteriormente con fprintf para que cada estructura se guarde una abajo de otra y no todas seguidas XD         printf("%c %s %s\n",temp.
marcado, temp.
ingles, temp.
espaniol);     }    
    
    
    return 0;
}
  
Así tienes hasta mas control en el formato de lo que va a salir en el fichero. Por ejemplo note que cada linea ahora es una estructura.