简单数据结构
数组
数组的概念
在编程里,我们有时候要存放很多同类型的数据。要是一个一个去创建变量,那就太麻烦了。这时候,数组就能派上用场了,数组就像是一个大箱子,能把很多相同类型的数据整齐地装在里面。
数组的合法定义
在 C++ 里,定义数组得告诉计算机三件事:数组里装的数据是什么类型,数组的名字叫什么,数组能装多少个数据。

基本语法
数据类型 数组名[数组大小];合法定义示例
// 定义一个能装 5 个整数的数组,名字叫 numbers
int numbers[5];
// 定义一个能装 10 个小数的数组,名字叫 scores
double scores[10];数组的非法定义
- 数组大小必须是一个确定的数字,不能是变量。下面这样定义就是错的:
int n = 5;
// 错误!数组大小不能是变量
int wrongNumbers[n]; - 数组大小不能是负数,下面这样定义也是错的:
// 错误!数组大小不能是负数
int badNumbers[-3]; 如何使用数组
数组里的每个数据都有一个编号,这个编号从 0 开始,我们把它叫做“索引”。通过索引,我们就能找到数组里的某个数据,也能给它赋值。
给数组元素赋值
#include <iostream>
using namespace std;
int main() {
// 定义一个能装 3 个整数的数组
int ages[3];
// 给数组的第一个元素(索引为 0)赋值为 10
ages[0] = 10;
// 给数组的第二个元素(索引为 1)赋值为 12
ages[1] = 12;
// 给数组的第三个元素(索引为 2)赋值为 15
ages[2] = 15;
return 0;
}访问数组元素
#include <iostream>
using namespace std;
int main() {
// 定义一个能装 3 个整数的数组,并初始化
int ages[3] = {10, 12, 15};
// 输出数组的第一个元素(索引为 0)
cout << "第一个人的年龄是:" << ages[0] << endl;
// 输出数组的第二个元素(索引为 1)
cout << "第二个人的年龄是:" << ages[1] << endl;
// 输出数组的第三个元素(索引为 2)
cout << "第三个人的年龄是:" << ages[2] << endl;
return 0;
}例题
例题 1:计算数组元素的和
#include <iostream>
using namespace std;
int main() {
// 定义一个能装 5 个整数的数组,并初始化
int numbers[5] = {1, 2, 3, 4, 5};
// 用来存放数组元素的和,初始值为 0
int sum = 0;
// 用循环遍历数组的每个元素
for (int i = 0; i < 5; i++) {
// 把当前元素的值加到 sum 里
sum = sum + numbers[i];
}
// 输出数组元素的和
cout << "数组元素的和是:" << sum << endl;
return 0;
}例题 2:找出数组中的最大值
#include <iostream>
using namespace std;
int main() {
// 定义一个能装 4 个整数的数组,并初始化
int scores[4] = {80, 90, 75, 95};
// 假设数组的第一个元素是最大值
int maxScore = scores[0];
// 用循环遍历数组的每个元素
for (int i = 1; i < 4; i++) {
// 如果当前元素比 maxScore 大
if (scores[i] > maxScore) {
// 就把当前元素的值赋给 maxScore
maxScore = scores[i];
}
}
// 输出数组中的最大值
cout << "数组中的最大值是:" << maxScore << endl;
return 0;
}例题
Status
Problem
Tags