// find string "xxx.y%" or "xxx%" in stdin and output "xxx" #include #define N 5 main (int argc, char **argv) { char c[N+1]; int i; FILE *f; f = fopen ("/dev/stdout", "w"); for (i=0; i < N; i++) c[i] = ' '; for (;;) { if (read(0, &c[0], 1) != 1) break; if (c[0] == '%') { int j = 0; for (i=1; i<=N && c[i]!=' '; i++) if (c[i]=='.') j = i; for (i--; i>j; i--) fputc (c[i], f); fputc ('\n', f); fflush (f); } if ((c[0] < '0' || c[0] > '9') && c[0] != '.') c[0] = ' '; for (i=N; i>0; i--) c[i] = c[i-1]; } fclose (f); return 0; }