K&R演習[1-12]

課題

入力した単語を1行に一つずつ印字するプログラムを書け

解答

#include <stdio.h>

int main(void)
{
    int c;

    while ((c = getchar()) != EOF) {        // ファイル終端まで
        if ((c == ' ') || (c == '\t')) {    // タブかバックスペースを
            printf("\n");                   // 改行に置換する
        } else {
            printf("%c", c);                // それ以外はそのまま
        }
    }
}

実行内容

fdsa, \t, fda, \b, Enter

実行結果

fdsa    fda da
fdsa
fda
da