本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。

输入格式:输入给出一行字符。

输出格式:在一行中输出单词个数。

输入样例:

Let’s go to room 209.

输出样例:

5
#include<stdio.h>
int main(){
	int i,cnt=0,cntword=0;
	char a;

	while(1){
	scanf("%c",&a);
	
	if(a=='\n'){//因为只是一行字符,所以遇到回车就结束。
	break;	
	}
	else if(a!=' '){//首字母不为‘ ’时
		cntword++;

	while(1){//此循环的意义在于判断该单词的位数。
	 //此循环应放在 首字母不为0时的语句中。否则会使的首字母为空格时,使	之跳过下一个字母(如输入‘ 1’则会输出0) 
		scanf("%c",&a);
		if(a==' '||a=='\n'){
		break;
		}//判断该单词是否为单字母单词 ,注意该单词在扫描到第一个字母时	已经将其cntword++ 
	
	}if(a=='\n'){
		break;
	}
	}
	
}printf("%d",cntword); 
return 0;
}

希望此题可以有助于改变我们思考问题的方式。