#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_LEN 257
int main(int argc, char *argv[]) { char line[MAX_LEN], *ptr; int c, i, l, n = 5; float t, tmin; FILE *fp; if (argc < 2) { printf("No otf filename\n"); exit(0); } if ( (fp = fopen(argv[1], "r")) == NULL) { printf("Cannot open otf file %s\n", argv[1]); exit(0); } while (fgets(line, MAX_LEN, fp)) { if (strstr(line, "smallest timesteps")) { sscanf(line, "%d", &n); if (n > 5) n = 5; tmin = 1.0e+20; fgets(line, MAX_LEN, fp); fgets(line, MAX_LEN, fp); for (i=0; i<n; i++) { fgets(line, MAX_LEN, fp); printf ("%s", line);
l = strlen(line) - 1; while ( (c = line[l]) == ' ' || c=='\n' || c=='\r' || c=='\t') l--; line[l+1] = '\0';
l = strlen(line) - 1; while ( (c = line[l]) != ' ') l--; ptr = &line[l]; sscanf(ptr, "%e", &t); if (t < tmin) tmin = t; } printf ("VAR TIMESTEP VALUE=\"%e\"\n", tmin); exit(0); } } fclose(fp); } |