[C con Clase] Guardar cada línea en arrays independientes

LAURA PATRICIA CARRANZA MURILLO laura.carranza en unibague.edu.co
Jue Mar 1 17:38:50 CET 2018


Buenos días,

Gracias Steven, tenías razón no ejecutaba por esa letra extra🙈 . Aún así
no genera el resultado buscado


​
los datos que deseo almacenar son los que están debajo de "DATOS DE LOS
PEDIDOS", pero como ven, cuando busco el pedido número dos que contiene los
valores 3 3 1 1 2, etc. solo arroja un dos. Por otro lado a demás de
mostrar estos datos también necesitaré eventualmente tomar uno de ellos
para realizar operaciones aritméticas, por ello pensé mas sencillo verlo
desde un array bidimensional A[i][j] donde i es el número de pedido (#de
fila +1, porque esos datos empiezan en la segunda fila), pero para ello las
filas tendrían que tener una longitud igual (ya lo probé agregando ceros
manualmente y funciona).

Adjuntaré el archivo txt del que les hablo para facilitar las cosas.

Muchas gracias por su ayuda y su rápida respuesta.

Saludos.


El 1 de marzo de 2018, 11:22, Davidson, Steven <srd4121 en njit.edu> escribió:

> Hola Laura,
>
> El mensaje de error es del enlazador, por lo que no es posible ejectuar el
> programa. Lo más seguro es que hubo un mensaje del compilador anterior a
> éste que es el error "de verdad". Mirando el código fuente, creo que el
> problema es la línea:
>
> scandf( "%i", &pedidoBuscado );
>
> El nombre correcto de la función es 'scanf'.
>
>
> Espero que esto te sirva.
>
> Steven
>
>
> 2018-03-01 9:02 GMT-05:00 LAURA PATRICIA CARRANZA MURILLO <
> laura.carranza en unibague.edu.co>:
>
>> Buenos días y muchas gracias por la respuesta!
>>
>> Agregué al código la parte en azul, pero el programa ya no ejecuta y en
>> cambio me arroja el siguiente error: "C:\Users\usuario\Desktop\coll
>> ect2.exe [Error] ld returned 1 exit status" . No estoy segura si esto
>> tiene que ver con el hecho de que las filas del txt no tienen la misma
>> longitud, es decir mientras una linea contiene 4 datos, la siguiente
>> almacena 14. Yo había hecho ya una prueba agregando 0 manualmente para
>> completar las filas y darles igual tamaño y funcionó bastante bien, pero
>> será muy engorroso al aplicar el programa en archivos de mayor contenido.
>>
>> Si dado el caso debo agregar ceros para completar las líneas de menor
>> tamaño, me podrías indicar de qué manera encontrar la línea de mayor tamaño
>> y su longitud?.
>>
>> Aquí dejo el código modificado.
>>
>> #include <stdio.h>
>>
>> int main()
>> {
>>    int i;
>>    char nombre[10]="datos.dat", linea[81];
>>    FILE *fichero;
>>    fichero = fopen( "C:\\Prueba\\guia(1).txt","r");
>>    printf( "Fichero: %s -> ", nombre );
>>    if( fichero )
>>       printf( "existe (ABIERTO)\n" );
>>
>>    else
>>    {
>>       printf( "Error (NO ABIERTO)\n" );
>>       return 1;
>>    }
>>
>> printf( "La primera linea del fichero: %s\n\n", nombre );
>>     printf( "%s\n", fgets(linea, 81, fichero) );
>>
>> printf( "DATOS DE LOS PEDIDOS \n\n");
>> for (i = 0; i< 20; i++)
>> {
>> printf( "%s\n", fgets(linea, 81, fichero) );
>> }
>> fseek(fichero,0L,SEEK_CUR);
>>    char lineas[20][81];
>>
>> for( i = 0; i< 20; i++ )
>> {
>>   fgets( lineas[i], 81, fichero );
>> }
>> printf("que pedido busca? ");
>> int pedidoBuscado;
>> pedidoBuscado= i+1;
>> scandf("%i",&pedidoBuscado);
>> printf("el pedido uno contiene: %s", linea[pedidoBuscado]);
>>
>>    if( !fclose(fichero) )
>>       printf( "\nFichero cerrado\n" );
>>    else
>>    {
>>       printf( "\nError: fichero NO CERRADO\n" );
>>       return 1;
>>    }
>>
>>       return 0;
>> }
>>
>> Saludos!
>>
>>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>



-- 
*Ing. Laura Patricia Carranza Murillo*
*Joven Investigadora*
*Grupo GINNOVA*
*cel. 3178954468*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20180301/067b5bb9/attachment.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: Captura.PNG
Type: image/png
Size: 31748 bytes
Desc: no disponible
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20180301/067b5bb9/attachment.png>
------------ próxima parte ------------
5 3 1.3
3 2 1 2 3 3 1 2 4 2 1 1 3 5
3 3 1 1 2 2 3 3 1 2 2 2 1 4 3 1
3 1 2 3 2 1 5 3 2 2 2 2 3 4 
2 2 1 4 2 3 2 1 1 2 1
4 2 2 2 3 2 2 1 3 2 3 3 1 2 2 2 3 2 1 2 2


Más información sobre la lista de distribución Cconclase