Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: pedro,, en 04 de Junio 2016, 00:33

Título: C (LenguajeC) Leer extraer datos desde ficheros o archivos. CU00538F
Publicado por: pedro,, en 04 de Junio 2016, 00:33
Hola, dejo una posible solución al ejercicio CU00538F.

Citar
EJERCICIO
Crea un archivo denominado almacen.txt que contendrá una palabra en cada línea (para un total de 6 líneas) como se muestra a continuación:

El
gaucho
es
equilibrio
y
belleza

Crea un programa que cree un array de palabras de modo que se lea el contenido del archivo y se almacene en los elementos del array. Por ejemplo palabra[0] contendrá "El", palabra[1] contendrá "gaucho" y así sucesivamente. Usando un bucle, muestra por pantalla la frase (intercalando los espacios necesarios). En este caso el resultado del programa será como este:
<<Tras extraer la información del archivo construimos esta frase: El gaucho es equilibrio y belleza>>

Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
int main() {
    char palabra[6][50];
    int i = 0;
    FILE* fichero;
    fichero = fopen("almacen.txt", "rt");
    printf("\nLa frase resultante es:\n\t");
    for (i = 0; i <= 5; i++) {
        fscanf (fichero, "%s", &palabra[i]);
        printf("%s ", palabra[i]);
    }
    fclose(fichero);
    printf("\n\nProceso de lectura completado\n");
    return 0;
}

almacen.txt contiene:
Código: [Seleccionar]
El
gaucho
es
equilibrio
y
belleza

Saludos. ;D
Título: Re:C (LenguajeC) Leer extraer datos desde ficheros o archivos. CU00538F
Publicado por: César Krall en 11 de Junio 2016, 18:39
Hola! Lo único que me ha chocado es for (i = 0; i <= 5; i++) ya que establece un límite exacto de lo que recorres con el bucle, pero creo que en esta entrega del curso todavía no se ha explicado EOF.  Cuando se entregue eso se verá una forma de extraer un número indefinido de elementos de un fichero.

Saludos!