65,211
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
#include <map>
#include <vector>
#include <string>
using namespace std;
int main()
{
map<string, vector<pair<string, string> > > family;
string familyName;
while (cout << "请输入家族姓氏:", cin >> familyName)
{
string firstName, birthday;
while (cout << "请输入此姓氏下孩子的名字和生日:", cin >> firstName >> birthday)
{
family[familyName].push_back(make_pair(firstName, birthday));
}
cin.clear();
}
cin.clear();
cout << "请输入查询家族姓氏:" << endl;
string search;
cin >> search;
map<string, vector<pair<string, string> > >::iterator it = family.find(search);
vector<pair<string, string> >::iterator pter;
if (it != family.end())
{
pter = it->second.begin();
while (pter != it->second.end())
{
cout << "此家族下孩子名字:" << (*pter).first << "\t"
<< "孩子生日:" << (*pter).second << endl;
pter++;
}
}
return 0;
}
#include<iostream>
#include<map>
#include<vector>
#include<string>
using namespace std;
int main()
{
map<string,vector<string> > mFirstName;
string s;
while(cout<<"请输入姓氏:",cin>>s)
{
cout<<"请输入名字:";
string name;
while(cin>>name)
{
mFirstName[s].push_back(name);
}
cin.clear();
}
cin.clear();
cout<<"请输入查询的姓氏:";
cin>>s;
map<string,vector<string> >::const_iterator it = mFirstName.find(s);
if(it!=mFirstName.end())
{
vector<string>::const_iterator cit = it->second.begin();
while(cit!=it->second.end())
{
cout<<*cit<<endl;
cit++;
}
}
return EXIT_SUCCESS;
}
==================================
请输入姓氏:he
请输入名字:1
2
3
5
^Z
请输入姓氏:zhang
请输入名字:4
5
6
7
^Z
请输入姓氏:li
请输入名字:w
e
q
s
a
^Z
请输入姓氏:^Z
请输入查询的姓氏:li
w
e
q
s
a
Terminated with return code 0
Press any key to continue ...
#include <iostream>
#include <map>
#include <vector>
#include <string>
using namespace std;
int main()
{
map<string, vector<string> > f_map;
string family_name;
vector<string> firstname;
vector<string>::iterator ster;
string name;
while (cin >> family_name >> name)
{
firstname.push_back(name);
f_map.insert(make_pair(family_name, firstname));
}
map<string, vector<string> >::iterator it = f_map.begin();
/* for (it = f_map.begin(); it != f_map.end(); ++it)
cout << it->first << " , " << it->second << endl;
*/
return 0;
}