首页 > 试题广场 >

编写一个程序,把输入作为字符流读取,直到遇到EOF。令该程序

[问答题]

编写一个程序,把输入作为字符流读取,直到遇到EOF。令该程序打印每个输入字符及其ASCII编码的十进制值。注意在ASCII序列中空格字符前面的字符是非打印字符,要特殊处理这些字符。如果非打印字符是换行符或制表符,则分期打印\n或\t。否则,使用控制字符符号。例如,ASCII的l是Ctrl+A,可以显示为AA。注意A的ASCⅡ值是Ctrl+A的值加64。对其他非打印字符也保持相似的关系。除去每次遇到一个换行符时就开始一个新行之外,每行打印10对值。

推荐
#include <stdio.h>
int main(void)
{
 char ch;
 int i;
 for(i=1; (ch=getchar()) != EOF; i++)
 {
 if (ch >= ' ' || ch == '\n' || ch == '\t') printf("%-5c",ch);
 else printf("^%-4c",ch+64);
 printf("%-5d",ch);
 if(i%8 == 0) printf("\n");
 }
 return 0;
}

发表于 2018-05-05 21:40:19 回复(0)