统计单词数

问题:输入一个英文句子(不超过80个字母),统计其中有多少个单词,单词之间用空格分开。
先想一想如果不使用任何的内置函数,我们会怎么做?

我们可以设置一个标志,如果此时字符为空,设置这个标志为0,如果此时字符不为空且标志为0,则计数加1。

代码如下:

#include<iostream>
using namespace std;

int main() {
	char str[80];
	int num = 0, flag = 0;
	cin.getline(str, 80);
	for (int i = 0; str[i] != '\0'; i++) {
		if (str[i] == ' ')
			flag = 0;
		else if (flag == 0) {
			flag = 1;
			num++;
		}
	}
	cout << "字符串中有" << num << "个单词" << endl;
	return 0;
}
posted @ 2019-01-22 23:55  暮雪&&如霜  阅读(172)  评论(0编辑  收藏  举报