概念:数组是一组相同元素的集合
一维数组
语法:
type arr-name[]
如:int arr[5]
int 就是数组类型,arr就是数组名字,[5]表示这个数组有5个元素
一维数组的初始化
完全初始化:
int arr[5]={1,2,3,4,5}
就是把数组所有的数值初始化,如果你不设置,默认初始化为0,就是不完全初始化;
int arr[5]={1}
这个数组的第一行元素为1,其余4个元素为0;
注意:你设置的初始化的个数不能超过你数组里面个数。
一维数组的使用
下标
[ ]这个操作符就是下标引用操作符;
并且下标是从0开始的,数组有x个元素,最后一个元素的下标就是x-1;
你需要使用数组其中的某个元素的时候,即如果你需要使用第六个元素,就直接打arr[5]
sizeof计算数组元素个数
sizeof是C语言的关键字,是可以计算类型或者变量大小的,也可以计算数组的大小,单位是字节。
#include<stdio.h> int main() { int arr[5] printf("%d\n",sizeof(arr)) return 0 }
这个代码的结果就是5*4=20;因为一个元素占4个字节
那么如果如何计算数组的元素个数呢,就可以采用除法
int s=sizeof(arr)/sizeof([0]);
二维数组
概念:把一维数组作为数组的元素,这时候就是二维数组,二维数组作为数组元素的数组就称为三维数组,二维数组以上就是多维数组。
换一种说法,就是二维数组是一维数组的数组。
语法
type arr-name[ ][ ]
- 例如:int arr [3][5],表示
|
就是表示三行五列,第一个[ ]表示行,第二个表示列
二维数组的初始化
不完全初始化:
int arr[3][5]={1.2}
1 | 2 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 |
完全初始化:
int arr[3][5]={1.2.3.4.5.6.7.8.9.10.11.12.13.14.15}
1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 |
按照行进行初始化:
int arr[3][5]={{2.2},{1,2}}
2 | 2 | 0 | 0 | 0 |
1 | 2 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 |
下标
行和列的下标和一维数组的一样,都是从0开始。
你如何输出一个完整的二维数组呢
#include<stdio.h> int main() { int arr[3][5] = {0}; int i = 0; for (i = 0; i < 3; i++)//行 { int j = 0; for (j = 0; j < 5; j++)//列 { scanf("%d", &arr[i][j]);//输入数据 } } for (i = 0; i < 3; i++) { int j = 0; for (j = 0; j < 5; j++) { printf("%d", &arr[i][j]); } } return 0; }
以上就是数组的全部内容啦,看到这里证明你已经非常有耐心啦,继续加油哦!