C语言数组
当我们需要输入很多同类型的变量的时候,如果一个一个的输入,就十分麻烦。所以我们需要一个东西来方便我们来干这件事情——数组。如果将要输入的变量做一个水,那么数组就是一个容器,一个杯子。
声明数组:
格式:数据类型 数组名 [数组的大小]
例如:int number [100]
数组的大小决定了给这个数组在内存开辟了多大的空间。
一般有以下三种:
数据类型 数组名称 [大小] = {元素1,元素2,元素3,元素4………};
数据类型 数组名称 [ ] = {元素1,元素2,元素3,元素4………};
数据类型 数组名称 [大小]; 数组名称[0] = 元素1,数组名称[1] = 元素2,数组名称[2] = 元素3,
数组名称[3] = 元素4;数组名称[n] = 元素n-1,
例如:int number[5] = {1,2,3,4,5}
int number[] = {1,2,3,4,5}
number[0]=1,number[4]=5;
特别注意:
很多人会忘记number[0]是第一项,number[4]是是最后一项。
初始化数组的时候要注意元素的个数不要超过数组的大小。
这种写法也是错误的,因为此时的a[5]表示的是数组中其中第五的元素,所以不能够给其赋五个值。
初始化数组:
我们不可能一个一个的给数组里面装入元素,所以我们要用到循环。例如以下用for循环初始化数组:
注意:给数组赋值的时候也要注意不要超过其下标。
数组长的已经在声明的时候就已经决定了,不能够改变。
遍历数组:
数组之间的赋值:
错误写法:
a和b为两个函数的数组名,其可以表示第一个元素和数组的地址,但是不能表示这个数组中所有元素。
所以只能一个元素一个元素的进行赋值。
正确写法:
数组在函数中的应用:
数组可以作为一个参数传给一个函数,也可以将某一个元素传给一个函数。
整个数组传给函数的时候:
单个元素传给数组:
注意:
数组在传递的时候数组类型不能改变。
在主函数中以数组名作为地址传输。
二维数组:
二维数组的初始化:
格式:数据类型 数组名 [数组大小][数组大小];
二维数组就像一个矩阵:
board[0][0] = 1 | board[0][1] = 2 | board[0][2] = 3 |
board[1][0] = 4 | board[1][1] = 5 | board[1][2] = 6 |
board[2][0] = 7 | board[2][1] = 8 | board[2][2] = 9 |
注意的是i表示行数,j表示列数。
同样的道理,我们使用三维,四维,乃至多维数组。