私は現在、「C プログラミング言語」の練習問題に取り組んでいます。これが私の解決策の1つです:
int c;
while ((c=getchar()) != EOF) {
if (c == ' ') {
while ((c = getchar()) == ' ')
{} // do nothing?
putchar(' ');
}
putchar(c);
}
ここでいくつかの解決策を見つけましたが、それは私のものとはまったく異なり、追加の変数を使用して何が起こっているかを追跡しますが、while ループを使用してすべてのスペースをスキップします。中括弧の間に何もない while ループを持つのは少しハックなように見えるので、私の解決策は少し面倒です。これをしない正当な理由があるかどうか疑問に思っていましたか?アドバイスをありがとう:-)