42.数组——一维数组定义方式
数组特点:放在一块连续的内存空间中,数组中每个元素都是相同数据类型。
三种定义形式:
数组类型 数组名 [数组长度];
int arr [5]
//给数组中的元素进行赋值,数组元素下标从0开始索引
arr [0] =10;
arr [1] =20;
arr [2] =30;
arr [3] =40;
arr [4] =50;
//访问数据元素
cout << arr [0] << endl;
cout << arr [1] << endl;
cout << arr [2] << endl;
cout << arr [3] << endl;
cout << arr [4] << endl;
数组类型 数组名 [数组长度]={值1,值2...};
int arr [5] ={10,20,30};//如果在初始化数据时,没有填完的数据,会用0填补剩余数据
for (int i =0,i<5,i++)
{
cout << arr [0] << endl;
}
数组类型 数组名 [] ={值1,值2...};
43.数组——一维数组——数组名
一维数组名称作用:
1.可以统计整个数组在内存中的长度: sizeof(数组名)
2.可以获取数组在内存中的首地址 : arr
int main()
{
int arr [10] ={1,2,3,4,5,6,7,8,9,10}
cout <<"整个数组所占内存空间为:" << sizeof(arr) << endl;
cout <<"每个元素所占内存空间为:" << sizeof(arr [0]) << endl;
cout <<"数组的元素个数为:" << sizeof(arr)/sizeof(arr [0]) << endl;
//可以通过数组名获取到数组的首地址
cout <<"数组首地址为:" << int(arr) << endl;
cout <<"数组中第一个元素的地址为:" << &int(arr[0]) << endl;
cout <<"数组中第一二个元素的地址为:" << &int(arr[1]) << endl
}
// arr=100;错误,数组名是常量,因此不可以赋值。
44.数组——一维数组——案例:五只小猪
int arr[5]={100,200,300,400,500};
int max =0;//先认定一个最大值为0
for (int i =0, i<5,i++)
{
for (arr[i]> max) //如果访问的数组中的元素比我认定的最大值还大,更新最大值;
{
max =arr[i];
}
}
cout << "最重的小猪体重为: << max <<endl; //打印最大值
45.数组——一维数组——案例:数组元素逆置
练习案例2:数组元素逆置
1.创建数组
int arr[5] ={1,3,2,5,4};
cout <<"数组逆置前:" << endl;
for (int i =0,i<5,i++)
{
cout << arr [i] << endl;
}
2.实现逆置
int start =0;//起始下标
int end = sizeof(arr)/sizeof(arr[0]) -1;//结束下标
while (start<end)
{ //实现元素互换
int temp =arr[start];
int start =arr[end];
int start =arr[temp];
//下标更新
start++;
end--;
}
cout <<"数组元素逆置后为:" << endl;
for (int i =0,i<5,i++)
{
cout << arr [i] << endl;
}
素例描述:请声明一个5个元素的数组,并且将元素逆置|
(如原数组元素为:1.3,2,5,4;逆置后输出结果为:4,5,2,3,1);
46.数组——一维数组——冒泡排序
47.数组——二维数组定义方式
二维数组定义方式:
1.数据类型 数组名 [行数][列数];
2.数据类型 数组名 [行数][列数] ={{数据1,数据2},{数据3,数据4}};
int arr [2][3]=
{
{1,2,3},
{4,5,6}
};
for (int i=0,i<2;i++)
{
for (int j=0,j<3;j++)
{
cout << arr[i][j] <<endl;
}
}
3.数据类型 数组名 [行数][列数] ={数据1,数据2,数据3,数据4};
4.数据类型 数组名 [ ][列数] ={数据1,数据2,数据3,数据4};
48.数组——二维数组数组名
二维数组名称用途
1.可以查看占用内存空间大小
int arr[2][3]=
{
{1,2,3},
{4,5,6}
};
cout << "二维数组占用内存空间为:" << sizeof(arr) << endl;
cout << "二维数组第一行占用内存空间为:" << sizeof(arr[0]) << endl;
cout << "二维数组第一个元素占用内存空间为:" << sizeof(arr[0][0]) << endl;
2.可查看二维数组的首地址
cout <<"二维数组首地址为:"<< (int)arr <<endl;
cout <<"二维数组第一行首地址为:"<< (int)arr[0] <<endl;
cout <<"二维数组第二行首地址为:"<< (int)arr[1] <<endl;
cout <<"二维数组第一个元素首地址为:"<< (int)&arr[0][0] <<endl;