int read_SERC_line(FILE *fp_in, struct SERC_data *S) { int i; float x_in; char ch[2], st[256], st_red[256]; size_t len; do{ do{ if(fscanf(fp_in, "%s", &st) == EOF) return 0; } while(strcmp(st, S->inst) != 0); fscanf(fp_in, "%s%s", &st, S->date); fscanf(fp_in, "%s%s", &st, S->time); fscanf(fp_in, "%s", &st); len = strlen(st); if(len > 150){ for(i = 1; i <= 20; i++){ strcpy(st_red, strchr(st, i+64)); sscanf(st_red, "%1s%9f", ch, &x_in); S->data[i] = x_in; } fscanf(fp_in, "%s%s%d", &st, &st, &S->data_sets); fscanf(fp_in, "%s%d", &st, &S->status); fscanf(fp_in, "%s%f", &st, &S->temp); fscanf(fp_in, "%s%d", &st, &S->fsc); return 1; } } while(1); }