getchar
C プログラミング クラスで、関数とのみを使用して、新しい行に各単語を含む詩を出力する割り当てがありputchar
ます。私はプログラムの大部分を書きましたが、複数のスペースに対して改行を 1 つだけにする方法がわかりません。たとえば、複数のスペースがある場合、出力にギャップが生じますが、これは望ましくありません。これを修正する方法を知っている人はいますか?
int main(int argc, const char * argv[])
{
/* Variables declared */
int iochar;
/* While loop */
while ((iochar = getchar() ) != EOF) {
/* If statement to return on alphabetic characters, not puncuation */
if (((iochar >= 'A') && (iochar <= 'Z')) || ((iochar >= 'a') && (iochar <= 'z'))) {
putchar(iochar);
}
/* If statement to produce a new line when a space is detected */
if (iochar == ' ') {
putchar('\n');
}
}
return 0;
}