Menu
CoddyTech

向量大小

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

使用向量时,你经常需要知道其中包含多少个元素。.size() 方法会提供这一信息,它会返回向量当前存储的元素数量。

下面介绍如何使用 .size() 方法:

std::vector<int> numbers = {10, 20, 30, 40, 50};
int count = numbers.size();
std::cout << "The vector has " << count << " elements" << std::endl;

这会输出 "The vector has 5 elements",因为我们的 vector 包含 5 个整数。

当你需要检查 vector 是否为空、验证数组边界或设置循环时,.size() 方法尤其有用。它会返回一个无符号整数,表示 vector 中当前元素的确切数量。使用 push_back() 等方法添加或删除元素时,这个数量会自动更新。

challenge icon

挑战

简单

创建一个程序,演示如何使用 .size() 方法,在收集学生成绩的过程中跟踪向量中的元素数量。

程序将接收以下输入:

  • 一个整数 n,表示要处理的学生成绩数量
  • 接着是 n 个整数,分别表示每位学生的成绩

你的程序应该:

  1. 创建一个名为 scores 的空 std::vector<int>
  2. 输出空向量的初始大小
  3. 使用循环读取 n 个学生成绩
  4. 对于每个成绩,使用 push_back() 将其添加到向量中
  5. 添加每个成绩后,输出向量当前的大小
  6. 最后,输出一条摘要信息,显示收集到的成绩总数

请使用以下确切的输出格式:

Initial vector size: 0
After adding score, size is: 1
After adding score, size is: 2
After adding score, size is: 3
...
Total scores collected: [final size]

使用 .size() 方法获取每次添加后向量中的当前元素数量,并用于最终摘要。

亲手试试

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

int main() {
    // 读取分数的数量
    int n;
    cin >> n;
    
    // 创建一个空 vector 来存放分数
    vector<int> scores;
    
    // TODO: 在下方编写你的代码
    // 1. 输出空 vector 的初始大小
    // 2. 用循环读取每个分数,并将其添加到 vector 中
    // 3. 每添加一个分数,就输出当前大小
    // 4. 输出最终的汇总信息
    
    return 0;
}
quiz icon自我测试

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

逻辑与流程中的所有课

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