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;
}
相关推荐
数据皮皮侠2 分钟前
上市公司内源与债权股权融资协同数据(2009-2025)
大数据·人工智能·算法·microsoft·百度
Hua-Jay3 分钟前
OpenCV联合C++/Qt 学习笔记(十七)----凸包检测、直线检测及点集拟合
c++·笔记·qt·opencv·学习·计算机视觉
KillerNoBlood6 分钟前
2026移动端跨平台开发面经总结
android·算法·flutter·ios·移动开发·鸿蒙·kmp
basketball6167 分钟前
C++ Lambda 表达式完全指南
开发语言·c++·算法
不知名的老吴9 分钟前
C++中emplace函数的不适场景总结(三)
开发语言·c++·算法
Java面试题总结19 分钟前
Go 里什么时候可以“panic”?
开发语言·后端·golang
rit843249919 分钟前
基于MATLAB平台的指纹识别系统实现
开发语言·matlab
2401_8920709821 分钟前
C++ 缓存线程池(CachedThreadPool):原理、实现、对比
c++·缓存·缓存线程池
沐知全栈开发29 分钟前
TypeScript String
开发语言
玉树临风ives30 分钟前
atcoder ABC 457 题解
数据结构·c++·算法