问题:输入一行字符,统计有多少个单词(单词之间用空格隔开)

代码:

 1 #include<stdio.h>
 2 int main()
 3 {
 4    char str[100];        //定义一个字符数组
 5    int i,num=0,count=0;   //num用来记录单词个数,count是信号值
 6    char c;
 7    printf("输入字符串:");
 8    gets(str);          //gets函数可以用来输入带有空格的字符串
 9    for(i=0;(c=str[i])!='\0';i++)   //如果没有查找到'\0'标识符,则一直运行
10    {
11        if(c==' ') count=0;  //如果遇到空格则将信号值设置为0
12        else if(count==0)      //遇到非空格符,同时信号值为0时才会判断是一个单词
13        {
14            count=1;
15            num++;        //单词数加一
16        }
17    }
18    printf("一共有%d个单词\n",num);
19 
20 }

运行结果:

C语言输入一个带空格的字符串求单词个数_i++