Bueno, como veis soy nueva aqui...
Os explico: estoy haciendo un programa tal que quiero que de un dichero(datos.txt) con formato:
1 1
2 2
3 3
lea cada linea(registro),e identifique en cada una px y py,de modo que las guarde en px[1],py[1], px[2],py[2], px[3],py[3].
hasta aqui, lo tengo mas o menos claro, pero el problema aparece cuando al definir las variables px,py, registro al inicio necesito que px,pu sean del tipo double!!(luego las voy a utilizar en otro sitio).
En fin, que este es mi codigo:
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#define N_P 3
int main()
{
FILE *fp,*fp_sal;
char registro[200][N_P];
int i;
double px[N_P],py[N_P];
fp=fopen("c:\\devcpp_fin\\datos\\datos.txt","r");
fp_sal=fopen("c:\\devcpp_fin\\datos\\salida.txt","w");
for(i=0;i<N_P;i++)
{
fgets(registro[i],200,fp);
sscanf(registro,"%d%d",&px[i],&py[i]);
fprintf(fp_sal,"%d %d\n",px[i],py[i]);
}
}
lo que ocurre es que el fichero de salida generado tiene la forma:
1 (numero raro)
2 (numero raro)
3 (numero raro)
En cambio si en el inicio defino px,py como int lo escribe perfectamente!!
Me podeis explicar por que??
necesito que px,py sean doubles!!!
podeis ayudarme???






