#include #include #include #define MAXLEN 256 void main(int argc, char *argv[]) { static char Line[MAXLEN]; int i; int Start, End; FILE *Infp, *Outfp; static char Temp2[3], Temp5[6], Temp6[7]; static char Item1[3], Item2[3]; long Item3, Item4; float Item5, Item6; static char MinItem2[3]; long MaxItem4; float Min, CalTemp; Start = atoi(argv[1]); End = atoi(argv[2]); Infp = fopen("c:\\c_it\\data\\abc3015.txt","rt"); Min = 999999f; strcpy(MinItem2, "0"); MaxItem4 = 0; for(i = 1;i<=End;i++) { fgets(Line,MAXLEN,Infp); if(i>=Start) { strncpy(Item1, Line + 7, 2); strncpy(Item2, Line + 21, 2); Item3 = atol(strncpy(Temp2,Line + 15, 2)) % 2; Item4 = atol(strncpy(Temp5,Line + 0, 5)); Item5 = atof(strncpy(Temp2,Line + 31, 2)); Item6 = atof(strncpy(Temp6,Line + 9, 6)); if((Item3 == 0) && (strcmp(Item1,"HE") == 0)) { CalTemp = Item5 + (Item6 * 0.4); if((CalTemp < Min) || ((CalTemp == Min) && (MaxItem4 < Item4))) { Min = CalTemp; strcpy(MinItem2, Item2); MaxItem4 = Item4; } } } } fclose(Infp); Outfp = fopen("C:\\C_IT\\DATA\\ans2.txt", "wt"); fprintf(Outfp,"%d %d %s\n",Start,End,MinItem2); fclose(Outfp); }