向量大小
本课属于 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() 等方法添加或删除元素时,这个数量会自动更新。
挑战
简单创建一个程序,演示如何使用 .size() 方法,在收集学生成绩的过程中跟踪向量中的元素数量。
程序将接收以下输入:
- 一个整数
n,表示要处理的学生成绩数量 - 接着是
n个整数,分别表示每位学生的成绩
你的程序应该:
- 创建一个名为
scores的空std::vector<int> - 输出空向量的初始大小
- 使用循环读取
n个学生成绩 - 对于每个成绩,使用
push_back()将其添加到向量中 - 添加每个成绩后,输出向量当前的大小
- 最后,输出一条摘要信息,显示收集到的成绩总数
请使用以下确切的输出格式:
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;
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: C++ 在线编译器