1.一维数组的创建和初始化
1.1数组的创建
数组是一组相同类型元素的集合,比如整形,字符型,浮点型
数组的创建方式:
type_t arr_name [const_n]
//type_t是数组每一个元素的类型
//arr_name是数组名
//const_n是常量表达式
数组创建的实例
//代码一
int arr1[10];
char arr2[10];
float arr4[1];
double arr5[20];
//代码二
int count = 10;
int arr[count];//会报错,因为count是一个变量了
1.2数组的初始化
数组的初始化是指,在创建数组的同时给数组的内容一些合理初始值(初始化)
int arr1[10] = {1,3,4};//这个叫不完全初始化,创建一个数组,用来存放个数为10的整形
//剩下的元素默认是0
int arr2[5] = {1,2,3,4,5};//这个叫完全初始化
int arr3[]={1,2,3,4};//如果不写创建数组个数的话,那么自己计算他是多少个个数,在这里是4
char arr4[]={'a',98,'c'};
char arr5[]={'a','b','c'};//数组arr4和arr5是一模一样的,因为字符b的ASCll值就是98
1.3一维数组的使用
对于数组的使用我们现在介绍一个操作符:[ ],叫做下标引用操作符,它其实就是数组访问的操作符,用来访问下标从而来访问每一个数组的元素的。
1.4一维数组在内存中的存储
仔细观察输出的结果可知,我们知道,随着数组下标的增长,元素的地址,也有着有规律的递增每一个地址都相差一个4,而一个整形在内存中所占的地址又是4个字节,由此可得出结论:数组在内存中是连续存放的。
2.二维数组的创建和初始化
2.1二维数组的创建
//数组创建
int arr[3][4];//指的是三行四列
char arr[3][5];//指的是三行五列
double arr[2][4];//指的是两行四列
2.2二维数组的初始化
//数组初始化
int arr[3][4]={1,2,3,4};//不完全初始化
//第一行1234 第二行0000 第三行0000
int arr[3][4]={{1,2},{4,5}};
//第一行1200 第二行 4500 第三行 0000
int arr[][4]={{2,3},{4,5}};
//第一行是2300,第二行是4500
//特别注意:二维数组如果初始化,行可以省略,列不能省略
2.3二维数组的使用
和一维数组一样,利用下标来访问二维数组
2.4二维数组在内存中的储存
像一维数组一样,这里我们尝试打印二维数组的每一个元素的地址
观察这个二维数组的地址也可以看出来,实际上二维数组和一维数组一样都是连续的。