ここで実際に何を求めているのか理解するのに助けが必要です。 私は既にプログラムの一部を書いています。 改行文字とタブ文字の10進値を出力する必要がありますか? なぜ1行につき10ペアも常時取得できないのですか?時には私は10組と別の時間を取得しないでください。エスケープされた表記法を使用した制御文字の印刷
割り当てされました:
がEOFに遭遇するまで、文字のストリームとして入力を読み込み、プログラムを書きます。プログラムに各入力文字と、ASCII小数値の を出力させます。
ASCII シーケンスの空白文字の前にある文字は、印刷されない文字です。それらを特別に扱う。 印刷されない文字が改行またはタブの場合、それぞれ\ nまたは\ t、 を出力します。それ以外の場合は、制御文字表記を使用します。たとえば、 ASCII 1はCtrl + Aで、これは^ Aと表示されます。 AのASCII の値は、Ctrl + Aの値に64を加えた値になります。同様の関係は、その他の非印字文字については です。改行文字が出現するたびに が新しい行を始めることを除いて、行ごとに10ペアを出力します。
これは私が書いたものです:
#include <stdio.h>
int main(void)
{
int ch;
int i=0;
printf("Please enter some characters.\n\n");
while((ch=getchar()) != EOF)
{
if((i%10) == 0)
printf("\n");
if (ch == '\n')
printf("\n\\n ");
else if (ch == '\t')
printf("\\t %d ", ch);
else if (ch < ' ')
printf("^%c %d ", ch+64, ch);
else
printf("%c %d ",ch, ch);
i = i+1;
}
return 0;
}
http://www.asciitable.com/バイナリファイルを処理します。 –
あなたの質問は何ですか?見逃しているのは、印刷可能なものと印刷できないものの区別です。 –
プログラムは実行されますが、正しく動作しているかどうかはわかりません。 – leocod