Anónimo
Anónimo realizada en EducaciónOtros - Educación · hace 10 meses

¿Ayuda de nuevo con programación :,D?

Debemos hacer el juego del ahorcado, las palabras a adivinar las tenemos en un  fichero y se debe escoger de forma aleatoria.  He leido el fichero, he contado las palabras, he echo un aleatorio de numeros y ahora debo hacer que se lea hasta el numero aleatorio, es decir si el numero es 3, leer la palabra 3.

#include<stdio.h>

#include<stdlib.h>

#include <time.h>

#include<string.h>

#define MIN 1

int main()

{

    FILE*fit;

    char nombre;

    char palabra[100];

    int contador = 0;

    int numero;

    fit= fopen("palabras.txt","r");

    printf("BIENVENIDO AL JUEGO!!\n");

    printf("como te llamas?\n");

    scanf("%s", &nombre);

    printf("Hola, '%s' a jugar!!\n");

 if(fit!=NULL)

    {

        while (!feof(fit))

        {

            printf("la palabra que hay en el fichero es: %s\n", palabra);

            fscanf(fit,"%s", &palabra);

            contador++;

        }

        fclose(fit);

        printf("el numero de posibles palabras a adivinar es:%d\n",contador);

        srand (time(NULL));

        numero = rand()% (contador - MIN + 1) + MIN;

        printf("%d\n", numero);

       fit= fopen("palabras.txt","r");

    AQUI TENGO EL PROBLEMA while(!feof(fit))

        {

         printf("la palabra es %s:\n", palabra)

        }

    }

 return 0;

}

La profesora me dijo que debia volver a abrir el archivo, ya lo hice, y volver a leer las palabras del fichero pero esta vez en ves de leer hasta el final del archivo debo leer hasta el numero aleatorio, como lo hago?

2 respuestas

Calificación
  • Anónimo
    hace 10 meses

    Lei solamente donde esta el problema, lo que deberia pasar en ese caso es que te imprima siempre la misma palabra dado que el valor de palabra no cambia, falto una linea que lea el archivo y asigne lo leido a palabra.

    Con fread()

  • hace 10 meses

    Hasta cuando tenés tiempo?

¿Aún tienes preguntas? Pregunta ahora y obtén respuestas.