C++ primer 第五版 中文版 练习 11.7 个人code

本文提供C++ Primer第五版中文版练习11.7的解答。通过使用C++标准库中的map和vector,实现了一个简单的家庭成员名字管理系统,允许用户输入家庭姓氏和孩子名字,并将新名字添加到对应家庭的孩子列表中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++ primer 第五版 中文版 练习 11.7 

题目:定义一个map,关键字是家庭的姓,值是一个vector,保存家中孩子(们)的名字。
编写代码,实现添加新的家庭以及向已有家庭中添加新的孩子。

答:

/*
定义一个map,关键字是家庭的姓,值是一个vector,保存家中孩子(们)的名字。
编写代码,实现添加新的家庭以及向已有家庭中添加新的孩子。
*/

#include <iostream>
#include <map>
#include <string>
#include <vector>

using namespace std;
int main()
{
	map<string, vector<string>> famliy = { { "wang", { "yan", "wei" } }, { "li", { "ke", "fei" } } };
	string famliyname, name;
	cout << "请输入姓和名,以空格或者回车格开:";

	cin >> famliyname >> name;

	famliy[famliyname].push_back(name);

		for (const auto &w : famliy)
		{
			cout <<"家庭的姓为:"<< w.first << " "<<"有这些孩子的名:"<<" ";
			for (const auto &a : w.second)
				cout << a << "、";
			cout << endl;
		}

		return 0;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值