c 语言 第五课 数组 (一位数组,二维数组)

​ 以前学习了基本数据类型,C语言还提供了构造类型的数据,构造类型的数据包括数组类型、结构体类型和共用体类型。本章就针对其中的数组类型进行讲解。

1.数组的基本概念: 同一基本类型下 具有共同意义变量的不同值组合在一起 就构成了数组!

例如: 我们小学为例! 小学的命名 我们取名: A ;小学的年级 分别为 1,2,3,4,5 五个年级

​ 1年级2年级都是2个班,3.4.5年级都是3个班

用数组表示A学习不同年级的个数!

​ int A[5]={2,2,3,3,3,}; //int表示类型 A表示数组的名字 每一个[ ]表示数组的一个序列

​ [5]表示对应序列的长度 ,{2,2,3,3,3,}大括号中表示的是对应的值

注意事项:

1.数组必须声明一个 类型 和数组中的值对应

2.数组的命名规则与基本类型的命名规则一样

3.数组中的序列必须用 [] 表示 不能用() {}或者别的符号表示

4.最重要的一点 声名数组的长度 必须是的正整数!不能是负数

数组的长度在计算机中 是从 0 开始计数的!

int a[N]; //假设预编译命令#define N 4, 下标是符号常量

 //以上面的学校为例
int  A[5]={2,2,3,3,3,};  //定义 数组和数组类型  ;号结尾
int  a,b,c;
     a=-1, b=0,c=5;
printf ("A[a]=%d,A[b]=%d,A[c]=%d",A[a],A[b],A[c]);//打印数组对应的值
//打印结果 A[a]=乱码,A[b]=2,A[c]=乱码    
//有次我们看出 A[0] 的值表示的 第一位置的值
//一定要牢记 打印数组的值 一定要从0开始计算  也就是 你想的位置是数组长度-1的位置!
//重要的事情说3变  0 是数组计数的开始

int A[a]; //这是声名一个 数组 ,a 表示数组的长度

​ A[x]=y ;//表示 A 数组 x 长度位置的 值 等于 y

二维数组

二维数组 有俩个序列组成的数组 称为二维数组

定义一个二维数组; int A [X] [Y]; X对应横列 Y对应竖列

和一维数组一样 数组的长度从 0开始的

X\Y Y0 Y1 Y2

X0 1 2 3

X1 4 5 6

X2 7 8 9 定义次数组如下

int A[3][3]={1,2,3,
             4,5,6,
             7,8,9};
//对应上图, C语言中先是先输入0横列 对应 竖列的所有值,在输入1横列对应竖列的所有值,以此类推
int  x,y;
     x=1,y=2;
printf("A[x][y]= 6%d",A[x][y]);
//A[x][y]就是分别把先 x=1 y=2  分别赋值给[x][y]括号内的XY  记 A[1][2]
 //输出结果  A[x][y]= 6

难点二维数组的求值

一定要 分清素质 的横列 和竖列

数组的长度 一定要从 0 开始计算

定义数组时 一定要表现清晰

多维数组

在计算机中,除一维数组和二维数组外,还有三维,四维,……等多维数组,它们用在某些特定程序开发中,多维数组的定义与二维数组类似,其语法格式具体如下:

数组类型修饰符 数组名 [n1][n2]…[nn];

定义一个三维数组的示例代码如下:

int x[3][4][5];

上面的这个例子,定义了一个三维数组,数组的名字是x,数组的长度为3,每个数组的元素又是一个二维数组,这个二维数组的长度是4,并且这个二维数组中的每个元素又是一个一维数组,这个一维数组的长度是5,元素类型是int。

多维数组在实际的工作中使用不多,并且使用方法与二维数组相似,这里不再做详细地讲解,有兴趣的读者可以自己学习