muchas gracias por la ayuda<br><br><div class="gmail_quote">El 6 de marzo de 2012 22:46, Salvador Pozo <span dir="ltr"><<a href="mailto:salvador@conclase.net">salvador@conclase.net</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
El pasado 2012-03-06 21:08:55, Albert_Munich escribió:<br>
<br>
A> A Salvador le queria preguntar como es que a el le ha funcionado. Has<br>
A> utilizado mi codigo fuente?<br>
<br>
Hola:<br>
<br>
He utilizado tu programa, lo he hecho de nuevo ahora, y a mi me funciona correctamente. No entiendo lo que puede estar pasando.<br>
<br>
Te paso "mi versión" del programa, espero que te ayude.<br>
<br>
----8<------<br>
<div class="im">#include <stdio.h><br>
#include <string.h><br>
<br>
struct t_palabra {<br>
</div><div class="im">    char castellano[30];<br>
    char ingles[30];<br>
    int cont_aciertos;<br>
    int cont_errores;<br>
};<br>
<br>
int main (void)<br>
{<br>
    FILE *fichero;<br>
</div><div class="im">    struct t_palabra palabra;<br>
    char respuesta[30];<br>
</div>    int i, nPalabras;<br>
<br>
/* Crea un fichero con dos palabras, quitar los comentarios para que lo haga cada vez */<br>
/*<br>
    fichero = fopen ("datos.dat", "wb+");<br>
    strcpy(palabra.castellano, "casa");<br>
    strcpy(palabra.ingles, "house");<br>
    palabra.cont_aciertos = palabra.cont_errores = 0;<br>
    fwrite(&palabra, sizeof(palabra), 1, fichero);<br>
    strcpy(palabra.castellano, "coche");<br>
    strcpy(palabra.ingles, "car");<br>
    fwrite(&palabra, sizeof(palabra), 1, fichero);<br>
    fclose(fichero);<br>
*/<br>
<div class="im"><br>
    fichero = fopen ("datos.dat", "rb+");<br>
</div><div class="im">    if (fichero == NULL)<br>
       printf ("Error: No se ha podido abrir el fichero datos.dat.");<br>
    else {<br>
</div>        i=0;<br>
        while(!feof(fichero))<br>
        {<br>
            fseek(fichero, i*sizeof(palabra), SEEK_SET);<br>
            if(fread(&palabra, sizeof(palabra), 1, fichero) > 0) {<br>
<div class="im">                printf ("\nEscribe la traduccion de...: ");<br>
</div><div class="im">                printf ("\n%s: ", palabra.castellano);<br>
                gets(respuesta);<br>
</div>                if (!strcmp(respuesta, palabra.ingles)) {<br>
                    printf ("\nCorrecto!");<br>
                    palabra.cont_aciertos++;<br>
<div class="im">                } else {<br>
                    printf ("\nIncorrecto.");<br>
</div>                    palabra.cont_errores++;<br>
                }<br>
                fseek(fichero, (-1)*sizeof(struct t_palabra), SEEK_CUR);<br>
<div class="im">                fwrite (&palabra, sizeof(palabra), 1, fichero);<br>
</div>                i++;<br>
<div class="im">            }<br>
        }<br>
        fclose (fichero);<br>
    }<br>
    fflush(stdin);<br>
    printf("\n\nPulse Intro para finalizar...");<br>
    getchar();<br>
<br>
</div>/* Parte para ver el estado final del fichero, quitar comentarios para activar */<br>
/*<br>
<div class="im">    fichero = fopen ("datos.dat", "rb+");<br>
</div>    rewind(fichero);<br>
    while(!feof(fichero)) {<br>
        if(fread(&palabra, sizeof(palabra), 1, fichero)) {<br>
            printf("%s Ac: %d Er: %d\n", palabra.castellano, palabra.cont_aciertos, palabra.cont_errores);<br>
        }<br>
    }<br>
    fclose (fichero);<br>
*/<br>
    return 0;<br>
}<br>
----8<------<br>
<div class="HOEnZb"><div class="h5"><br>
Hasta pronto.<br>
<br>
--<br>
Salvador Pozo (Administrador)<br>
mailto:<a href="mailto:salvador@conclase.net">salvador@conclase.net</a><br>
_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br>
</div></div></blockquote></div><br>