数组定义
用于存放指定类型的数据,一旦确定是不能更改的,因为数组声明后,会在内存中开辟一块连续的区域,来存放这些数据,所以类型和长度必须在一开始就明确。
数据的下标从 0 开始,0 表示第一个素,1 表示第二个素,后续素以此类推!
数组的初始化
int a[10]; // 直接声明int类型数组,容量为10,随机值 int b[10] = {1, 2, 4}; // 声明后,可以赋值初始值,使用{}囊括,不一定需要让10个位置都有初始值,比如这里仅仅是为前三个设定了初始值,注意,跟变量一样,如果不设定初始值,数组内的数据并不一定都是0 int c[10] = {1, 2, [4] = 777, [9] = 666}; //我们也可以通过 [下标] = 的形式来指定某一位的初始值,注意下标是从0开始的,第一个素就是第0个下标位置,比如这里数组容量为10,那么最多到9 int d[] = {1, 2, 3}; //也可以根据后面的赋值来决定数组长度
示例一:输出12个月的月份,每个月的天数
#include <stdio.h> int main() { int arr[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; for (int i = 0; i < 12; i++) { int days = arr[i]; // 直接通过数组 名称[下标] 来访问对应的素值,下标是从0开始的,不是1 printf("2022年 %d 月的天数是:%d 天\n", (i + 1), days); } return 0; }
示例二:对数组中存储的数据进行修改
#include <stdio.h> int main() { int arr[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; arr[0] = 30; // 对 1 月份的天数进行修改 arr[10] = 31; // 对 11 月份的天数进行修改 for (int i = 0; i < 12; i++) { int days = arr[i]; // 直接通过数组 名称[下标] 来访问对应的素值,下标是从0开始的,不是1 printf("2022年 %d 月的天数是:%d 天\n", (i + 1), days); } return 0; }
二维数组
数组不仅仅只可以有一个维度,我们可以创建二维甚至多维的数组,简单来说就是,存放数组的数组。
例如:存放2020-2022年每个月的天数,那么此时用一维数组肯定是不方便了,我们就可以使用二维数组来处理
//2020年是闰年,2月有29天 int arr[3][12] = {{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};
输出2020年2月份的天数:
#include <stdio.h> int main() { int arr[3][12] = {{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}; // 比如现在我们想要获取2020年2月的天数,首先第一个是[0]表示存放的第一个数组,第二个[1]表示数组中的第二个素 printf("%d", arr[0][1]); // 二维数组的遍历 for (int i = 0; i < 3; ++i) { printf("一维数组展示:"); for (int j = 0; j < 12; ++j) { printf("%d ", arr[i][j]); } printf("\n"); } return 0; }
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/16717.html