首页 > 代码库 > 编写一个程序,以每行一个单词的形式打印其输入。

编写一个程序,以每行一个单词的形式打印其输入。

1-12

#include <stdio.h>
#include <ctype.h>
#define OUT 0 //当前无单词
#define IN 1 //标志当前是单词

int main()
{
int in, state;                //in来保存输入,state状态,Word保存单词
state = OUT;               //初始状态为无单词
while((in = getchar()) != EOF)       //测试是否还有输入

{
if(in == ‘ ‘ || in == ‘\n‘ || in == ‘\t‘){        //判断是否输入特殊符号(非字母)

  if(state == IN){            //判断获得特殊符号的之前是不是字母
  state = OUT;             //将状态变为非单词
  putchar(‘\n‘);             //换行
  }
}
if(isalnum(in)){              //判断是否是字母或者数字
  if(state == OUT)           //第一次获得字母
  {
    state = IN;            //将state设为单词状态
    putchar(in);            
  }else{
    putchar(in);
  }
}//if
}//while
}//main