思路:word坐标志符初值为0 ,并且遇到空格,word就标记为0,当有字符不为空格且前一个为空格则其为新单词的开始,num就要加一
/*
时间:2020/08/14
目的:计算单词个数
功能:进一步熟悉对于字符串的操作
*/
#include<stdio.h>
int main() {
char string[81];
int i , num = 0 , word = 0;
char c;
gets(string);
for(i = 0; (c = string[i]) != '\0'; i++) {
if(c == ' ')word=0;//空格word就标记为0
else if(word == 0) { //当该字符不为空格且前一个为空格则其为新单词的开始
word = 1;
num++;
}
}
printf("\n该句有%d个单词",num);
return 0;
}
/*
总结:有空格,word就标记为0,当有字符不为空格且前一个为空格则其为新单词的开始
-----------------------
在dev中输出结果为
i am a boy
该句有4个单词 正确
-----------------------
*/