C++ //练习 14.39 修改上一题的程序令其报告长度在1至9之间的单词有多少个、长度在10以上的单词又有多少个。

C++ Primer(第5版) 练习 14.39

练习 14.39 修改上一题的程序令其报告长度在1至9之间的单词有多少个、长度在10以上的单词又有多少个。

环境:Linux Ubuntu(云服务器)
工具:vim

代码块

cpp 复制代码
class Check{
	public:
	Check(int s = 0): sz(s){}
	bool operator()(const string& s){
		return s.size() == sz ? true : false;
	}

	private:
	size_t sz;
};

int main(){
	vector<string> str;
	string s;
	while(cin>>s){
		str.push_back(s);
		if(cin.get() == '\n'){
			break;
		}
	}
	int count = 0;
	for(int i = 1; i < 10; i++){
		count += count_if(str.begin(), str.end(), Check(i));
	}
	cout<<"Length(1~9) words: "<<count<<endl;
	cout<<"Length(>=10) words: "<<str.size() - count<<endl;

	return 0;
}
相关推荐
☆cwlulu1 分钟前
调试排查工具介绍(gdb、strace、Valgrind等)
开发语言·c++·嵌入式硬件·ubuntu
Jerry2 分钟前
LeetCode 203. 移除链表元素
算法
地平线开发者15 分钟前
征程 6 | 工具链 QAT ObserverBase 源码解析
算法
卷无止境23 分钟前
C++ 存储类说明符(Storage Class Specifier)大横评
c++·后端
卷无止境33 分钟前
C++ 编程的一大坑:非常量全局变量是"万恶之源"
c++·后端
C语言小火车33 分钟前
C++ 快速排序(Quick Sort)深度精讲:分治思想、Lomuto 分区法及三数取中优化,面试手撕必会
c语言·开发语言·c++·面试·排序算法·快速排序
sycmancia34 分钟前
Qt——多线程间的互斥
开发语言·qt
地平线开发者37 分钟前
【地平线 征程 6 工具链进阶教程】QAT 训练常见问题和排查
算法
地平线开发者39 分钟前
征程 6 | 直方图量化配置与校准实例
算法