C++ primer(第五版) 练习 3.21 个人code



C++ primer(第五版) 练习 3.21


题目:请使用迭代器重做3.3.3节的第一个练习 (就是 练习3.16:编写一段程序,把练习3.13中vector对象的容量和具体内容输出出来)


答:

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

using std::cout;
using std::cin;
using std::endl;
using std::string;
using std::vector;

int main()
{
	vector<int> v1;
	vector<int> v2(10);
	vector<int> v3(10, 42);
	vector<int> v4{ 10 };
	vector<int> v5{ 10, 42 };
	vector<string> v6{ 10 };
	vector<string> v7{ 10, "hi" };

	cout << "v1的容量是:" << v1.size() << endl;
	cout << "v2的容量是:" << v2.size() << endl;
	cout << "v3的容量是:" << v3.size() << endl;
	cout << "v4的容量是:" << v4.size() << endl;
	cout << "v5的容量是:" << v5.size() << endl;
	cout << "v6的容量是:" << v6.size() << endl;
	cout << "v7的容量是:" << v7.size() << endl;
	cout << endl ;
	cout << "v1里的元素内容如下:" << endl;
	if (v1.begin() == v1.end())
	{
		cout << "v1容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v1.begin(); b != v1.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	cout << "v2里的元素内容如下:" << endl;
	if (v2.begin() == v2.end())
	{
		cout << "v2容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v2.begin(); b != v2.end(); b++)
			cout << *b << " ";
	}
	cout << endl;

	cout << "v3里的元素内容如下:" << endl;
	if (v3.begin() == v3.end())
	{
		cout << "v3容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v3.begin(); b != v3.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	cout << "v4里的元素内容如下:" << endl;
	if (v4.begin() == v4.end())
	{
		cout << "v4容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v4.begin(); b != v4.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	cout << "v5里的元素内容如下:" << endl;
	if (v5.begin() == v5.end())
	{
		cout << "v5容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v5.begin(); b != v5.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	cout << "v6里的元素内容如下:" << endl;
	if (v6.begin() == v6.end())
	{
		cout << "v6容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v6.begin(); b != v6.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	cout << "v7里的元素内容如下:" << endl;
	if (v7.begin() == v7.end())
	{
		cout << "v7容器里没有元素" << endl;
	}
	else
	{
		for (auto b = v7.begin(); b != v7.end(); b++)
			cout << *b << " ";
	}
	cout << endl ;

	return 0;

}


执行结果图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值