// exploitation du fichier de mesures mesures.txt // Format // Ligne d'entête : MR V(V) I(A) // puis chaque ligne tension courant // fin par une ligne vide // Ex : // MR V(V) I(A) // 0 0 // 0.4 0.0344 // ...... // on lit tout le fichier pour déterminer la résistance moyenne #include #include int main(void) { int nb_mesures=0 ; double v,i,r,rmoy; char str[80] ; // pour stocker les lignes FILE * fr ; // descripteur de fichier fr=fopen("mesures.txt","r"); if ( fr != NULL ) { printf("fopen a reussit\n"); // lecture entête et contrôle sommaire du format fgets(str,80,fr); if (str[0]!='M' || str[1]!='R') { printf("le fichier n'est pas au bon format !"); system("pause"); return 0 ; } // lecture des mesures et calculs rmoy=0; while( fgets(str,80,fr) , feof(fr)==0 ) { nb_mesures++; sscanf(str,"%lf %lf",&v,&i); r = v/i; rmoy = rmoy + r ; printf("mesure n%d : r=%f , chaine lue %s",nb_mesures,r,str); } if(nb_mesures!=0) { rmoy = rmoy / nb_mesures ; printf("\n r moyenne = %f\n",rmoy); } else { printf("fichier mesures vide!\n"); } fclose(fr); } else { printf("lecture du fichier mesures impossible !\n"); } system("pause"); return 0 ; }