#include <stdio.h>
int main()
{
    char c;
    int psp = 0;
    int nl = 1;
    while((c = getchar()) != EOF)
    {
        if (c == \' \')
        {
            if (psp)
            {
                continue;
            }
            if (!nl)
            {
                psp = 1;
            }
        }
        else
        {
            psp = 0;
        }

        putchar(c);

        if (c == \'\\n\')
        {
            psp = 0;
            nl = 1;
        }
        else
        {
            nl = 0;
        }
    }
    return 0;
}


아주 대충 발로 만들었지만, 이거면 되지 안나 싶네요?
그냥 파이핑으로
./a.out < 읽을파일 > 변환완료파일

코드는 좀 부끄럽네 -_-