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