一.数组的基本概念
// 数组是构造类型 int float是基本数据类型
// 数组特点:
// 1.用来保存同一类型的数值
// 2.每个元素都有一个索引号,索引号从0开始
// 数据类型 变量名字 int num;
// 元素类型 数组名[元素个数];
int ages[3];//定义一个数组
// 初始化的两种方式
// 1.先定义一个数组,再赋值
// 只能一个元素,一个元素的赋值
// int ages1[3];
// ages1[0] = 12;
// ages1[1] = 10;
// ages1[2] = 18;
ages1 = {13, 127,16};
//
// 2.定义数组的同时初始化
int ages2[3] = {13, 26, 88};
二.数组的存数细节
//内存寻址 由大到小
// 数组名就是数组的地址
// 规律,数组的地址就是0角标元素的地址,数组名字也是数组地址
*.数组的注意点
// 数组的[]中的元素个数,只能写整型常量和char,以及返回值为整型常量的表达式
int scores2['A'] = {1,3};
int scores3[1 + 2] = {1, 4};
// 开发中,小括号里的元素个数,不要放变量
//定义数组变量的同时初始化,可以省略[]中的元素个数
int scores5[] = {1, 4, 8};
// 定义数组变量的同时,不初始化,不可以省略[]的数字
// int scores6[];
// scores6[0] = 12;
// 不完全初始化
int scores8[3] = {1};
* 数组里面,如果不给元素初始化,默认是0
三.二维数组
/*
二维数组的格式:
元素类型 数组的名称[元素的个数]
一维元素类型 数组的名称[多少个一维数组][每一个一维数组有多少个元素]
二维元素类型 数组名称[行数][列数]
*/
// int ages[3] = {12, 33, 17};
//
// int ages1[3 * 5] = {22, 33, 12, 16};//可阅读性差
//
用二维数组定义:
int ages[3][4] = {
{22, 14, 13, 15},
{12, 15, 21, 26},
{13, 34, 21, 22}
};
*.二维数组注意点
// 1.定义的同时初始化
int a[2][3] = {
{11, 22, 43},
{23, 24, 12}
};
// 2.按照存储的顺序取
// 会首先存3个到第一行, 从第四个开始 存到第二行
int b[2][3] = {1, 2, 3, 4, 5, 6};
// 3.部分初始化 二维数组 没初始化的元素,也是0
int c[2][3] = {
{22, 13, 14},
{22}
};
// 4.因为明确了每一个以一维数组的元素个数
// 按照存储的顺序取
// 会首先存3个到第一行, 从第四个开始 存到第二行
int d[][3] = {1, 2, 3, 4, 5, 6};
5.要给二维数组进行一次性的赋值,只能在定义的同时来进行