009-数组-C语言笔记

009-数组-C语言笔记

学习目标

1.【掌握】数组的声明数组

2.【掌握】数组元素的赋值和调用dom

3.【掌握】数组的初始化ide

4.【掌握】数组的遍历函数

5.【掌握】数组在内存中的存储学习

6.【掌握】数组长度计算spa

7.【掌握】数组的常见应用指针

8.【掌握】数组做为函数的参数code

1、数组的声明

做用:orm

能够存储指定数据类型指定个数的数据,数组与咱们以前学习的变量最大的不一样就是咱们以前的变量只能存储一个数据,而咱们的数组能够存储多个数据。blog

特色:

1.能够存储多个数据

2.虽然数组能够存储多个数据,可是并非什么类型的数据均可以存储的。要求存储在数组中的数据的类型要一致,在建立数组的时候指定能够存储的多个数据的类型。

3.虽然数组能够存储多个数据,但不是任意个都能直接往里面存储的,数组之中能够存储的数据的个数是固定的,也是在建立数组的时候指定的,一旦指定,不能改变。

4.存储在数组之中的数据很是方便管理,拿到数组就能够很方便的拿到数组之中的数据

术语:

1.元素:数组中的每个小空间,就叫作数组的元素。

2.下标/索引:数组之中有不少元素,为了区分每个元素,C语言就为每个元素编了一个号,这个号就叫这个元素的下标/索引。下标/索引从0开始递增。

3.长度:元素的个数。

语法:数组元素的数据类型 数组名[数组长度];

注意:

1.声明数组的时候必需要指定数组的长度!

2.数组的长度能够为0,表示一个数据都不能存储,数组长度也能够为1,表示只能存储一个数据,但长度不能给负数和小数。

3.数组长度能够是常量,变量,宏,表达式。可是长度一旦声明,长度就不能改了。

4.当数组长度为变量的时候,是不能在声明数组的同时为数组元素初始化值的。只能先声明数组,而后再为元素赋值。

2、数组元素的赋值和调用

数组真正用来存储数据的是数组中的元素,而不是数组自己,数组指的是整个数组,因此咱们不能直接为数组赋值。因此咱们应该将数据赋值给数组中的元素。数组之中有多个元素,元素的本质其实就是一个普通类型的变量。那咱们如何肯定是为哪一个元素赋值呢?

赋值语法:数组名[元素的下标] = 数据;

调用语法:数组名[元素下标];

 

3、数组的初始化

在声明数组的同时就初始化数组之中的每个元素的值。

注意:

在声明数组的时候初始化元素,若是元素个数使用变量,就不能初始化。在编译的时候,编译器是不知道数组的长度的,因此无法初始化。

 

4、数组的遍历

 

 

5、数组在内存中的存储

111111111111111

数组其实就是由指定个数的连续的变量组合成的,存储方式和普通变量存储方式相同,把每个元素当作一个普通变量。分配内存空间的时候,只是分配多个连续空间分别存储每一个元素,并且也是从高地址向低地址连续分配的。每一个元素的地址,就是他占用字节的最低字节的地址。

数组的地址:数组之中第1个元素的地址,就是数组的地址。也就是下标为0的元素的地址。

6、数组长度计算

sizeof(数组名)计算出这个数组在内存中占用的总字节数。

sizeof(数据类型)计算出每一个元素在内存中占用的字节数。

元素个数 = sizeof(数组名)/sizeof(数据类型);

 

7、数组的常见应用

1.求最大值

2.求最小值

3.求累加和

4.求平均值

5.查找数组是否包含指定元素

6.查找指定元素在数组中第一次出现的下标

7.选择排序

双色球案例练习:

 

8、数组做为函数的参数

若是函数的形参是一个数组,在调用这个函数的时候,也必需要为这个函数传入一个相同类型的数组,而且是传入数组的地址。而后函数操做的就是咱们传进去那个数组,改变数组中的元素,也就是改变传入的那个数组的元素。

注意:当数组做为函数的参数的时候,传入的是数组的地址,一个地址占据8个字节。但一个数组若是占据的内存大于8字节,将不能在函数里经过sizeof计算数组的长度。并且函数里的形参是去内存中申请8个字节存储指针变量,并将传入的数组地址赋值给这个指针变量。

咱们会发现函数中打印的数组地址和咱们声明的数组的地址是一致的

相关文章
相关标签/搜索