Obtener archivo .txt en C++

Iniciado por Ipanemaa, 21 Enero 2012, 11:11 AM

0 Miembros y 1 Visitante están viendo este tema.

Ipanemaa

Hola, tengo el siguiente programa, compilado con dev-c++, que calcula la media de dos columnas

Citar#include <stdio.h>

int main(int argc, char *argv[]){

     FILE *fp;
     float dominadasAB;
     float dominadasBA;
     float sumAB = 0.0;
     float sumBA = 0.0;
     char cadAB[100];
     char cadBA[100];
     int lineas = 0;
     int asignadas = 0;
     
     fp=fopen("CAB-CBA.txt","r");
     
     while (asignadas != EOF){
          asignadas = fscanf(fp, "%s %f %s %f", cadAB, &dominadasAB, cadBA, &dominadasBA);
          if (asignadas != EOF){
             sumAB += dominadasAB;
             sumBA += dominadasBA;
             lineas++;
          }
     }
     
     printf("Lineas leidas: %d\n", lineas);
     printf("Sumatorio %s %f\n", cadAB, sumAB);
     printf("Media %s %f\n", cadAB, sumAB / lineas);
     printf("Sumatorio %s %f\n", cadBA, sumBA);
     printf("Media %s %f\n", cadBA, sumBA / lineas);
     
     fclose(fp);

}

No se como hacer que los dos resultados que me calculan la media vayan a un .txr, o modifiquen el archivo original, sin borrar lo que hay en el, escribiendo debajo. Lo he intentado todo, cambiando el tipo de archivo.txt, de "r" a "a" a "w", con otras funciones tipo fprintf, fget, fput,... pero ninguna me da el resultado que quiero. Alguna sugerencia?

Gracias.

Xandrete

Tan sencillo como abrir el archivo en modo append ("a" en lugar de "r") o utilizar fseek para despazarte al final del archivo (fseek(fp,0,SEEK_END)).

Saludos

Ipanemaa