AColin_s 2022-02-22 22:47 采纳率: 100%
浏览 33
已结题

怎么将回车符转换为转义符

将字符串s复制到字符串t时,将其中的换行符和制表符转换可见的转义符,即用“\n”表示回车符,“\t”表示制表符。
我能将制表符转换为“\t”,但是输入回车符时,就会结束输入,即回车符并没有成为字符串的一部分,怎么输入回车符呢?

  • 写回答

4条回答 默认 最新

  • 关注

    用getwchar()一个字符一个字符的读取,直到等于EOF结束
    你题目的解答代码如下:

    #include<stdio.h>
    
    int main()
    {
        int i=0;
        char s[100],c;
        while ((c=getchar())!=EOF)
        {
            if (c=='\n')
            {
                s[i++] = '\\';
                s[i++] = 'n';
            }
            else if (c=='\t')
            {
                s[i++] = '\\';
                s[i++] = 't';
            }
            else
            {
                s[i++] = c;
            }
        }
        s[i] = '\0';
        printf("%s\n", s);
        return 0;
    }
    

    img


    通过键盘输入时,按Ctrl+Z组合键后再按回车键,就代表输入结束(也就是返回EOF)。
    在UNIX/Linux/Mac OS系统中,Ctrl+D代表输入结束。

    图片中^Z 就是按Ctrl+Z组合键的结果

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月3日
  • 已采纳回答 2月23日
  • 创建了问题 2月22日