K&R演習[1-10]

課題

各タブを\tに、各バックスペースを\bに、各バックスラッシュを\\に置き換えながら、
入力を出力に複写するプログラムを書け。

ソースコード

#include <stdio.h>

int main(void)
{
    int c;

    while ((c = getchar()) != EOF) {
        if (c == '\t')  {   printf("\\t"); } else   /* タブ */
        if (c == ' ') {     printf("\\b"); } else   /* バックスペース */
        if (c == '\\') {    printf("\\\\"); } else  /* バックスラッシュ */
        {   printf("%c", c); }                      /* 上記以外 */
        
    }
}

実行内容

「tab」入力、Tabキー押下、「space」入力、Spaceキー押下、「back」入力、\キー押下して
Enterキー押下

実行結果

tab     space  back\
tab\tspace\b\bback\\