#include <stdio.h>
#include <ctype.h>
#define OUT 0
#define IN 1
main()
{
char s[200]; /*假设字符串长度小于200*/
int i,sta,pstart,wcnt;
/*pstart表示单词开始位置,wcnt表示长度为3的单词个数*/
gets(s);
wcnt=0;
sta=OUT;
for(i=0;s[i]!='\0';i++)
if(isalpha(s[i])) /*如果s[i]是字母*/
{
if(sta==OUT)
{
pstart=i;
sta=IN;
}
}
else
if(sta==IN)
{
sta=OUT;
if(3==i-pstart)
/*如果单词长度=3*/
wcnt++;
}
if(sta==IN&&3==(i-pstart))
wcnt++;
printf("%d ",wcnt);
}
写了一个供参考
[
本帖最后由 helloUJS 于 2013-5-5 20:57 编辑 ]