/* copies input to output replacing multiple blanks with 1 */ #include enum { IN, OUT }; int main(void) { unsigned char state=OUT; char c; while ((c=getchar()) != EOF) { if (state == OUT) { putchar(c); if (c == ' ') state = IN; } else if (state == IN) { if (c != ' ') { putchar(c); state = OUT; } } } return 0; }