標準入力から一度に1文字ずつデータを読み込み、その結果を標準出力に出力しています。 10文字ごとに改行したいたとえば:Cで10文字後に改行を挿入するにはどうすればよいですか?
1234567891
01112
出力 -
123456789101112
入力 - これは私がこれまで持っているものですが、それは動作しません。
if(numChars = 10) {
printf("\n");
numChars = 0;
}
標準入力から一度に1文字ずつデータを読み込み、その結果を標準出力に出力しています。 10文字ごとに改行したいたとえば:Cで10文字後に改行を挿入するにはどうすればよいですか?
1234567891
01112
出力 -
123456789101112
入力 - これは私がこれまで持っているものですが、それは動作しません。
if(numChars = 10) {
printf("\n");
numChars = 0;
}
#include <windows.h>
int main()
{
char test[] = "123456789101112123133431234567891011121231334312345678910111212313343";
int i = 0;
while (i < strlen(test))
{
printf("%c", test[i++]);
if (i % 10 == 0) {
printf("\n");
}
}
return 0;
}
ループの条件部分に' strlen() 'を使うのは、測定する文字列が長さを変えない限り、特に良い考えではありません。ループの前に一度呼び出すと、返された値が使用されます。 –
最後の出力行を終了するためにループの後に 'if(i%10!= 0)putchar( '\ n'); –
あなたは 'numChars'をインクリメントしていますか? – StoryTeller
代入 '= 'ではなく、等号' == 'を試してみてください。 – scrappedcola