开天辟地的卷毛 2022-01-05 17:54 采纳率: 85.4%
浏览 18
已结题

c primer plus编程练习习题的问题。关于重定向的问题

编写一个程序,在遇到EOF之前,把输入作为字符流获取。程序要打印每个输入的字符及其相应的ASCII十进制值,注意,在ASCII序列中,空格字符前面的字符都是非打印字符,要特殊处理,使用控制字符变量法,例如ASCII的1是Ctrl+A,可显示^A。A的ASCII值是Ctrl+A的值加上64。
问:
这里怎么使得dos显示^A.怎么使用控制字符变量法

  • 写回答

1条回答 默认 最新

  • _GX_ 2022-01-05 18:14
    关注
    #include <stdio.h>
    
    int main()
    {
        char ch;
        while ((ch = getchar()) != EOF)
        {
            if (ch < 32)
                printf("^%c %3d\n", '@' + ch, (int)ch);
            else if (ch == 127)
                printf("^? %3d\n", (int)ch);
            else
                printf("%2c %3d\n", ch, (int)ch);
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月21日
  • 已采纳回答 1月13日
  • 创建了问题 1月5日

悬赏问题

  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗