Menu
CoddyTech

添加元素

本课属于 Coddy C++ 学习旅程的“逻辑与流程”单元。第 11 课,共 56 课。

现在你已经知道如何创建向量,接下来我们来学习如何在创建向量后向其中添加元素。push_back() 方法是扩展向量的主要工具,可以在向量末尾添加新元素。

push_back() 方法接受一个参数,也就是你想添加的值,并将它追加到 vector 的末尾:

std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);

在这个示例中,我们从一个空向量开始,并使用 push_back() 添加三个整数。执行这些操作后,我们的向量按顺序包含元素 [10, 20, 30]。

push_back() 的优点是,它会自动处理所有内存管理。当你添加元素而向量空间不足时,它会自动分配更多内存,并将现有元素复制到新位置。这样一来,即使你事先不知道最终大小,使用向量构建数据集合也会非常方便。

challenge icon

挑战

简单

编写一个程序,演示如何使用 push_back() 方法向 vector 添加元素。你将从一个空 vector 开始,按特定顺序添加数字,动态构建这个 vector。

将提供以下输入:

  • 一个整数 n,表示要添加到 vector 中的数字个数
  • 接着是 n 个整数,这些整数应逐个添加到 vector 中

你的程序应当:

  1. 创建一个名为 numbers 的空 std::vector<int>
  2. 使用循环读取 n 个输入数字中的每一个
  3. 对每个数字,使用 push_back() 将它添加到 vector 末尾
  4. 每添加一个数字后,输出 vector 当前的大小以及刚添加的数字
  5. 最后,在同一行输出 vector 中的所有元素,并用空格分隔

使用以下精确的输出格式:

Added [number], size is now [current size]
Added [number], size is now [current size]
...
Final vector: [num1] [num2] [num3] ...

每次添加元素后,使用 .size() 方法获取 vector 中当前的元素个数。输出最终结果时,使用方括号 [] 运算符按索引访问每个元素。

亲手试试

#include <iostream>
#include <vector>
using namespace std;

int main() {
    // 读取要添加的元素数量
    int n;
    cin >> n;
    
    // 创建一个空 vector
    vector<int> numbers;
    
    // TODO: 在这里编写你的代码
    // 读取 n 个数字,并使用 push_back() 将它们添加到 vector 中
    // 每次添加后打印要求的输出
    
    // 打印最终的 vector
    cout << "Final vector: ";
    // TODO: 打印所有元素,元素之间用空格分隔
    
    return 0;
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: C++ 在线编译器