5 : dd cc aaa
8 : aaa bb dd
10 : bb cc aaa
4 : dd bb cc
257 0.860000
233 1.000000
144 0.880000
377 0.000000
257 0.860000
562 0.000000
456 0.000000
388 0.660000
644 0.000000
277 0.460000
160 1.000000
155 1.000000
160 1.000000
155 1.000000
175 0.000000
185 0.000000
170 0.000000
175 0.000000
174 0.000000
163 0.400000
30 1.000000
32 1.000000
45 1.000000
56 1.000000
46 0.860000
48 0.000000
34 0.000000
38 0.500000
59 0.660000
30 0.000000
257 0.860000
233 1.000000
144 0.880000
377 0.000000
257 0.860000
562 0.000000
456 0.000000
388 0.660000
644 0.000000
277 0.460000
5 : dd cc aaa : 0.00
8 : aaa bb dd : 0.00
10 : bb cc aaa : 0.00
4 : dd bb cc : 0.00
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question#include <stdlib.h> #include <stdio.h> int readInt(FILE* fp, int *ret) { int i; char sBuffer[32]; for (i=0;i<8;i++) { sBuffer[i] = fgetc(fp); if (sBuffer[i]==32) { sBuffer[i] = 0; *ret = strtol(sBuffer, NULL, 0); return 0; } } *ret = 0; return -1; } double LireDegree(int nLineNumber, char* sFileName) { char sBuffer[32]; FILE* fp; int i=0; if (fp = fopen(sFileName, "r")) { while(--nLineNumber) while (!feof(fp) && fgetc(fp)!=10); while (fgetc(fp)!=32); while(!feof(fp)) { sBuffer[i] = fgetc(fp); if (sBuffer[i]==32 || sBuffer[i]==13) break; i++; } sBuffer[i] = 0; fclose(fp); return strtod(sBuffer, NULL); } return 0.0; } int main() { char sBuffer[32]; FILE *fp, *fp_final; int nLineNumber, i; double nCurDegree, nMinDegree = 0.0; int bFirst=1; int bBreak = 0; fp = fopen("resultat.txt", "r"); fp_final = fopen("resultat_final.txt", "w"); while (!readInt(fp, &nLineNumber)) { fprintf(fp_final, "%d :", nLineNumber); fgetc(fp); i=0; while(!feof(fp)) { sBuffer[i]=fgetc(fp); if (sBuffer[0]==10) break; else if (sBuffer[i]==10 || sBuffer[i]==32 && i!=0) { bBreak = (sBuffer[i]==10); sBuffer[i] = 0; fprintf(fp_final, " %s", sBuffer); sBuffer[i++] = '.'; sBuffer[i++] = 't'; sBuffer[i++] = 'x'; sBuffer[i++] = 't'; sBuffer[i] = '\0'; nCurDegree = LireDegree(nLineNumber, sBuffer); if (nMinDegree>nCurDegree || bFirst) { bFirst = 0; nMinDegree = nCurDegree; } i=0; if (bBreak) break; } else if (sBuffer[0]!=32) i++; } fprintf(fp_final, " : %f\n", nMinDegree); bFirst = 1; } fclose(fp); fclose(fp_final); system("type resultat_final.txt"); system("pause"); }
5 : dd cc aaa : 0.000000
8 : aaa bb dd : 0.500000
10 : bb cc aaa : 0.000000
4 : dd bb : 0.000000
5 : dd cc aaa : 0.00
8 : aaa bb dd : 0.50
10 : bb cc aaa : 0.00
4 : dd bb cc : 0.00
4 : dd bb
4 : dd bb cc