输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。

解:如果测出某一个字符为非空格,而它前面的字符是空格,则表示新单词开始了,用变量word作为判别当前是否开始了一个新单词的标志,word=0,未出现新单词,word=1,出现了新单词。

程序:

#include<stdio.h>

int main()

{

char string[81];

int i,count=0,word=0;

char c;

gets(string);//输入一个字符串给字符数组string

for (i = 0;(c=string[i])!='\0'; i++)

{

if (c == ' ')//如果是空格字符,使word置0

{

word = 0;

}

else if (word == 0)//如果不是空格字符,且word原来的值为0,使word置1

{

word = 1;

count++;

}

}

printf("count=%d\n",count);

return 0;

}

结果:

I am handsome!

count=3

请按任意键继续. . .