Hola estoy programando en C y tengo muchos problemas con asignacion dinamica y ficheros. Urgente necesito ayuda!!! Muy buen aporte el de foro!! saludos


07 de Mayo del 2016

Particularmente tengo problemas con estos ejercicios que no se como se hacen!!Desde ya si alguien puede ayudarme  muchas gracias!!!!  

problema2:Escriba una funcion para leer numeros de un archivo de datos que contenga una serie de
numeros reales a razon de uno o mas por linea, separados por espacios. El prototipo debe ser
int lee_nro(char archivo[],double *num);
donde archivo contendra el nombre del archivo a leer y en num se devolvera el numero ledo. La funcion
en s devolvera verdadero si se ha podido leer un numero correctamente, y falso en caso contrario. Note
que la funcion debera devolver sucesivamente los distintos numeros del archivo cada vez que es llamada,
de modo que pueda utilizarse por ejemplo como sigue:
double a;
while (lee_nro(argv[1],&a))
printf("%gn",a);
Ayuda: recuerde la sentencia static.
Problema 3. Utilice la funcion del problema anterior para escribir un programa que lea un archivo
con numeros reales y los grabe en otro archivo, de a uno por linea.

Problema 4. Asignacion dinamica de memoria. En aplicaciones numericas ocurre con relativa
frecuencia la necesidad de leer un conjunto de numeros reales y almacenarlos en un arreglo para luego
procesarlos. En general es deseable que el programa sea capaz de leer tantos numeros como puedan
almacenarse en la memoria, sin jar un lmite predeterminado dentro del programa: por esta razon no
es conveniente utilizar arreglos con espacio asignado estaticamente, del tipo
#define NMAX 2000
double data[NMAX];
La asignacion dinamica de memoria (mediante malloc() y free()), aunque algo mas complicada, es
mucho mas conveniente. Escriba una funcion que sea capaz de leer un archivo que contenga como
primera lnea un numero entero que indique cuantos reales hay a continuacion. El prototipo debe ser
int leer(char nombre[],double **a,int *N);

 

Problema 5. Escriba una version mejorada de la funcion anterior, que tenga identico prototipo pero
que no necesite leer el numero N del archivo, sino que lo determine por su cuenta, simplemente leyendo
todos los reales presentes en el archivo. Ayuda: utilice la funcion realloc().

Realmente me cuesta mucho este tema, y si tuviera los codigos seria mas sencillo de estudiar!!!