问题:输入一行字符,统计有多少个单词(单词之间用空格隔开)
代码:
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 }
运行结果: