#include #include char wd[65536]; int main(int _, char **v) { int l; int n; char *p; if (_ < 2) n = 40; else n = atoi(v[1]); if (n <= 0 || n > 40) n = 40; l = 0; while (1) { int c = getchar(); if (c == EOF) break; if (c == '\n') break; wd[l] = c; l++; if (l == 65535) break; } wd[l] = 0; if (l <= n) { printf("%s", wd); return 0; } p = wd + l - n; while (*p && *p != '/') p++; if (!*p) p = wd + l - n; printf("...%s", p); return 0; }