作业介绍

数组的基本概念

定义

例如 int a[10] 就定义了一个元素类型都为 int 且可以存储 1010 个元素的数组 aa

需要注意数组定义时中括号内的大小需要为整数,且不能过大,因为题目都有空间限制。

访问不同的元素

通过 数组名[下标] 来访问,例如第一个元素的获取就可以通过 a[0] 来获取。

需要注意数组的下标是从 00 开始。

数组就好比把多个变量捆绑到一起,通过改变中括号内的下标来实现不同变量的访问。

优点

做题时可能需要先把数字存起来,随后可以通过数组的访问方式来获取不同的元素。

遍历和存储元素到一个数组

遍历一个数组,就是遍历每个元素的下标,存储通过输入语句实现。

例如输入 55 个元素到数组中,且把第一个元素放到下标为 00 的位置。

int a[5];
cin >> a[0] >> a[1] >> a[2] >> a[3] >> a[4];

我们可以发现只有中括号内的下标在不断变化,因此可以通过循环来实现下标的变化。

int a[5];
for (int i = 0; i < 4; i++)
{
     cin >> a[i];
}

由于每一个 a[i] 都可以看作是一个变量,因此它们都支持赋值等正常变量允许的操作。

例如 a[0] = 5;cout << a[0];

当我们希望把第一个元素存放到下标为 11 时,此时只需要修改循环范围即可,同时要注意一个大小为 100100 的数组,它的下标范围是 0990\sim 99 一旦超出允许的下标范围会发生数组越界,为了避免此问题,建议通常将数组设置的大一些。例如下代码

int a[15];
for (int i = 1; i <= 10; i++)
{
     cin >> a[i];
}

在这个代码中,a[0],a[11],a[12],a[13],a[14] 都是没有赋值的,这是允许的。

  • 输入 nn 个元素到数组中。

这类题目我们要注意题目 nn 的范围,因为我们数组要预先设置大小,给即将到来的 nn 个元素腾出位置,因此需要保证数组可以满足 nn 最大的情况。以 1n1001\leq n\leq 100 举例,最多会存储 100100 个元素,那么我们可以把数组大小设置为 105105

int a[105];
int n;
cin >> n;
for (int i = 1; i <= n; i++)
{
     cin >> a[i];
}

题目

认领作业后才可以查看作业内容。
状态
正在进行…
题目
11
开始时间
2024-1-20 0:00
截止时间
2034-1-20 23:59
可延期
24 小时