#include<stdio.h> #define IN 1 #define OUT 0 main() {int c,nl,nw,nc,state; state=OUT; nl=nw=nc=0; w

2025-06-25 19:58:51
推荐回答(1个)
回答1:

#include //包含标准输入输出头文件
#define IN 1 //定义标识IN为1
#define OUT 0 //定义标识OUT为0
main() //main()函数入口
{int c,nl,nw,nc,state; //定义变量c,nl,nw,nc,state为整型
state=OUT; //state初始化为OUT
nl=nw=nc=0; //nl,nw,nc初始化为0
while((c=getchar)!=EOF) //如果没达到文件末尾
{ ++nc; //文件中的字符数加1
if(c=='\n') //如果是换行符
++nl; //行数加1
if(c==' '||c=='\n'||c='\t')//如果是空格或者换行或者制表符,
state=OUT; //标志state为OUT
else if(state==OUT) /*如果state为OUT,即当前字符是空格或者换行或者制表符*/
{state=IN; //标志state为IN
++nw; //单词数加1
}
}
printf("%d%d%d\n",nl,nw,nc); /*如果达到文件末尾,打印出文档中行数、单词数、字符数*/
}