ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C++ prime 第十一章

2021-10-30 17:09:22  阅读:180  来源: 互联网

标签:prime end int 第十一章 namespace C++ auto using include


11.4

#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
using namespace std;

using namespace placeholders;

void process(string& s)
{
	for (auto i = s.begin(); i != s.end(); ++i)
	{
		*i = tolower(*i);   //处理大写字母
		s.erase(remove_if(s.begin(), s.end(), ispunct), s.end()); //处理标点符号

	}
}

int main(int argc, char** argv)
{
	map<string, size_t> word_count;
	string word;


	while (cin >> word)
	{
		process(word);
		++word_count[word];
	}
	for (const auto &w : word_count)
	{
		cout << w.first << "  " << w.second << ((w.second > 1) ? "times" : "time") << endl;
	}
	return 0;
}

10.7

#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
using namespace std;

using namespace placeholders;

void process(string& s)
{
	for (auto i = s.begin(); i != s.end(); ++i)
	{
		*i = tolower(*i);   //处理大写字母
		s.erase(remove_if(s.begin(), s.end(), ispunct), s.end()); //处理标点符号

	}
}

int main(int argc, char** argv)
{
	map<string, vector<string>> family;

	string last_name, child_name;
	cout << "请输入家族姓氏" << endl;
	cin >> last_name;
	cout << "请输入孩子的名字" << endl;
	while (cin >> child_name)
	{
		family[last_name].push_back(child_name);
	}
	for (auto i : family)
	{
		cout << "该姓氏 : " << i.first << "成员有 : " << endl;

		for (auto j : i.second)
		{
			cout << j << "  ";
		}
		cout << endl;
	}




	return 0;
}

11.12

#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
#include<utility>
using namespace std;

using namespace placeholders;

/*void process(string& s)
{
	for (auto i = s.begin(); i != s.end(); ++i)
	{
		*i = tolower(*i);   //处理大写字母
		s.erase(remove_if(s.begin(), s.end(), ispunct), s.end()); //处理标点符号

	}
}*/

int main(int argc, char** argv)
{
	vector<pair<string, int>> vec;
	string s;
	int num;
	cout << "请输入要读入的字符串 和 数字" << endl;

	while (cin >> s >> num)
	{
	
        vec.push_back(pair<string, int>(s, num)); //第一种
		vec.push_back({ s,num }); //第二种 
		vec.emplace_back(s, num); //第三种
		vec.push_back(make_pair(s, num)); //第四种

	}
	for (auto i : vec)
	{
		cout << i.first << " " << i.second << endl;
	}
	


	return 0;
}

11.14

#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
using namespace std;

using namespace placeholders;

//void process(string& s)
//{
//	for (auto i = s.begin(); i != s.end(); ++i)
//	{
//		*i = tolower(*i);   //处理大写字母
//		s.erase(remove_if(s.begin(), s.end(), ispunct), s.end()); //处理标点符号
//
//	}
//}

int main(int argc, char** argv)
{
	map<string, vector<pair<string,string>>> family;

	string last_name, child_name, birthday;
	cout << "请输入家族姓氏" << endl;
	cin >> last_name;
	cout << "请输入孩子的名字和生日" << endl;
	while (cin >> child_name >> birthday)
	{
		family[last_name].push_back({ child_name,birthday });
	}
	for (auto i : family)
	{
		cout << "该姓氏 : " << i.first << "成员有 : " << endl;

		for (auto j : i.second)
		{
			cout << j.first <<  "   " << j.second;
		}
		cout << endl;
	}




	return 0;
}

11.31


#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
using namespace std;

using namespace placeholders;

/*void process(string& s)
{
	for (auto i = s.begin(); i != s.end(); ++i)
	{
		*i = tolower(*i);   //处理大写字母
		s.erase(remove_if(s.begin(), s.end(), ispunct), s.end()); //处理标点符号

	}
}*/

int main(int argc, char** argv)
{
	multimap<string, string> mp = { {"Joker","renzhendexue"},{"Joker","yanyuan"},{"Joker","weibeideqingchun"} ,{"Jony J","nuli"}};
	auto iter = mp.find("Joker");
	auto num = mp.count("Joker");

	while (num)
	{
		if (iter->second == "renzhendexue")
		{
			mp.erase(iter);
			break;
		}
		++iter;
		--num;
	}
	for (auto i : mp)
	{
		cout << i.first << "的作品" << i.second << endl;

	}

	cout << endl;

	system("pause");
	cin.get();
}

11.32


#include<iostream>
#include<string>
#include<fstream>
#include<sstream>
#include<vector>
#include<forward_list>
#include<deque>
#include<algorithm>
#include<list>
#include<functional>
#include<iterator>
#include<map>
#include<set>
#include<unordered_map>
#include<unordered_set>
#include<cctype>
using namespace std;

using namespace placeholders;


int main(int argc, char** argv)
{
	multimap<string, string> mp = { {"Joker","renzhendexue"},{"Joker","yanyuan"},{"Joker","weibeideqingchun"} ,{"Jony J","nuli"}};
	auto iter = mp.find("Joker");
	auto num = mp.count("Joker");
	map<string, set<string>> ans;  //对于set,系统能根据元素的值自动进行排序
	for (auto i : mp) {
		ans[i.first].insert(i.second);
	}
	for (auto i : ans) {
		cout << i.first << " : ";
		for (auto j : i.second) {
			cout << j << " ";
		}
		cout << endl;
	}

	system("pause");
	return 0;
	cin.get();
}

标签:prime,end,int,第十一章,namespace,C++,auto,using,include
来源: https://blog.csdn.net/Subs_/article/details/121042254

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有