C程序设计语言 练习1-10

版权声明:转载时打个招呼。 https://blog.csdn.net/qq_15971883/article/details/88017900

编写一个将输入复制到输出的程序,并将其中的制表符替换为\t,把回退符替换为\b,把反斜杠替换为\\。这样可以将制表符和回退符以可见的方式显示出来。

Write a program to copy its input to its output, replacing each tab by \t, each backspace by \b, and each backslash by \\. This makes tabs and backspaces visible in an unambiguous way. 

version 1

#include <stdio.h> 

int main(void)
{
    int c; 
    while ((c = getchar()) != EOF)
    {
        if (c == '\t')
        {
             putchar('\\');
             putchar('t'); 
        }
        else if (c == '\b')
        {
             putchar('\\');
             putchar('b');
        }
        else if (c == '\\')
        {
             putchar('\\');
             putchar('\\');
        }
        else
        {
             putchar(c); 
        }
    }

    system("pause"); 
    return 0; 
}

version 2

#include <stdio.h> 

int main(void)
{
    int c; 
    int Flag; 

    while ((c = getchar()) != EOF)
    {
        Flag = 0;

        if (c == '\t')
        {
             putchar('\\');
             putchar('t'); 
             Flag = 1;
        }
        
        if (c == '\b')
        {
             putchar('\\');
             putchar('b');
             Flag = 1;
        }
        
        if (c == '\\')
        {
             putchar('\\');
             putchar('\\');
             Flag = 1;
        }
        
        if (Flag == 0)
        {
             putchar(c);
        }
    }

    system("pause"); 
    return 0; 
}

猜你喜欢

转载自blog.csdn.net/qq_15971883/article/details/88017900