1.输入字符串并存到数组中,利用gets();
2.运用假设法判断,假设第一次为真,之后遇到空格则变为假,直到遇到单词再变为真
每次单词数加一的条件出现在第二个单词的第一个字母,然后恢复之前的循环。
#include <stdio.h>
#include <stdlib.h>int main()
{
char str[100];
int count=0;
gets(str);
int a=1,i;//假设读取到字母时数字为正,
for(i=0;str[i]!='\0';i++)
{
if(str[i]==' ')
a=0;//当读取到空格时为假,当空还未结束时不执行下面else语句
else
{
if(a==0)
{
a=1;//当上面遇到下一个单词字母时,单词数加一,并将假设恢复为正持续上述循环
count+=1;
}
}
}
printf("%d",count+1);
return 0;
}