【C程序设计语言第二版】练习1-12 纯getchar()函数实现读入一个单词并打印输出

代码思路

我们可以利用单词统计的思路,标记目前的状态是在字符内部还是在字符的外部,然后做出相应的处理即可。

#include <stdio.h>
#define IN 1 /* 在单词内 */
#define OUT 0 /* 在单词外 */

int main(void)
{
    int c, state;
    state = OUT;
    while((c = getchar()) != EOF) {
        if(c == ' ' || c == '\n'  || c == '\t') {
            putchar('\n');
            state = OUT;
        } else if(state == OUT) { // 从单词外部进入单词,即单词的第一个字符
            putchar(c);
            state = IN;
        }
        else {
            putchar(c);
        }
    }
    return 0;
}
发布了128 篇原创文章 · 获赞 20 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/u011544909/article/details/93660508