2 数组
约 840 字大约 3 分钟
2025-04-05
数组是若干个相同类型的变量在内存中有序存储的集合。
int a[10]://定义了一个整型的数组 a,
a是数组的名字,数组中有 10 个元素,每个元素的类型都是 int 类型,而且在内存中连续存储。 这十个元素分别是 a[0] a[1].... a[9] a[0]~a[9]在内存中连续的顺序存储
数组的引用
数组名[下标];//下标代表数组元素在数组中的位置,不能越界
int a[5];
a[0] a[1] a[2]
分类
按元素分
- 字符数组 即若干个字符变量的集合,数组中的每个元素都是字符型的变量
char s[10]; s[o],s[1]....s[9];
- 短整型的数组
short int a[10]; a[0] ,a[9]; a[o]=4;a[9]=8;
- 整型的数组
int a[10]; a[0] a[9];a[0]=3;a[0]=6;
- 长整型的数组
lont int a[5];
- 浮点型的数组(单、双)
float a[6]; a[4]=3.14f;
double a[8]; a[7]=3.115926;
- 指针数组
char*a[10];
int * a[10];
- 结构体数组
struct stu boy[10];
按维数分
- 一维数组
int a[30];
在数组定义的时候可以不给出数组元素的个数,根据初始化的个数来定数组的大小 格式:
数据类型 数组名 [数组元素个数];
int a[10];
char b[5]; 定义了 5个 char 类型变量的数组 b
赋初值
int b[]={1,2,3,4};
5 个变量分别为 b[0],b[1],b[2],b[3],b[4];
- 二维数组 有行,有列,
int a[2] [30];
- 多维数组
int a[4][2][10];
三维数组是由多个相同的二维数组构成的
int a[5][4][2][10];
格式:
二维数组
数据类型 数组名 [行的个数][列的个数];
int a[4][5];
定义了20个int类型的变量,分别是:
a[0][0],a[0][1],a[0][2],a[0][3],a[0][4];
a[1][0],a[1][1],a[1][2],a[1][3],a[1][4];
a[2][0],a[2][1],a[2][2],a[2][3],a[2][4];
a[3][0],a[3][1],a[3][2],a[3][3],a[3][4];
多维数组定义:
int a[3][4][5];
int a[8][3][4][5];
可以只初始化一部分
int b[][3] ={
{1, 2, 3},
{4, 5},
{17, 8, 9},
{10, 11, 12},
{13, 14, 15}
}
初始化
定义数组的时候,顺便给数组的元素赋初值,即开辟空间的同时并且给数组元素赋值
a、全部初始化
int a[5]={2,4,7,8,5};
代表的意思: a[0]=2; a[1]=4;a[2]=7;a[3]= 8;a[4]=5;
b、部分初始化
int a[5]={2,4,33};初始化赋值不够后面补 0
a[0] = 2; a[1]= 4;a[2]=3;a[3]=0;a[4]=0;
注意: 只能省略后面元素,可以不初始化,不能中间的不初始化
按行初始化:
a、全部初始化
int a[2][2]={{1,2},{4,5}};
a[0][0] =1; a[0][1] = 2; [1][0] = 4,a[1][1]=5:
b、部分初始化
int a[3][3]={{1,2},{1}};
a[0][0] = 1;a[0][2] =0:
逐个初始化
a、全部初始化
int a [2][3]={2,5,4,2,3,4};
b、部分初始化
int a[2][3]= {3,5,6,8};
贡献者
版权所有
版权归属:PinkDopeyBug