数组——一维数组的定义方式
概述:
- 所谓数组就是一个集合,里面存放了相同类型的数据元素
- 数据中每个数据元素都是相同的数据类型
- 数组是由连续的内存位置构成的
一维数组定义的三种方式
- 数据类型 数组名[数组长度];
- 数据类型 数组名[数组长度] = {值1,值2…};
- 数据类型 数组名[] = {值1,值2…};
数组的输出方式通常是用循环来进行输出
#include <iostream>
using namespace std;
int main()
{
int arr[5] = {10,20,30,40,50};
for(int i = 0; i < 5; i++)
{
cout<<arr[i]<<endl;
}
return 0;
}
如果在初始化数据的时候,没有全部初始化,则会用0填补剩余位置
定义数组的时候必须要有数组长度
数组名不要和变量重名
一维数组的数组名
用途:
- 可用于统计整个数组在内存中的长度
- 可以获取数组在内存中的首地址
#include <iostream>
using namespace std;
int main()
{
int arr[5] = {10,20,30,40,50};
for(int i = 0; i < 5; i++)
{
cout<<"第"<<i+1<<"个数组的位置"<<(long long)&arr[i]<<endl;
}
return 0;
}
每次运行后都会重新分配地址
数组名是一个常量,不可以进行赋值操作
一维数组案例——五只小猪称体重
需求案例:在一个数组中记录了五只小猪的体重,找出并打印最重的小猪体重
分析:
- 创建五个小猪体重
- 从数组中找到最大值
- 打印最大值
#include <iostream>
using namespace std;
int main()
{
int PIG[5];
int w;
int max = 0;
for (int i = 0; i < 5; i++)
{
cin >> w;
PIG[i] = w;
}
for (int j = 0; j < 5; j++)
{
if (PIG[j] > max)
{
max = PIG[j];
}
else
{
continue;
}
}
cout << max << endl;
return 0;
}
一维数组案例——元素倒置
需求案例:声明一个5个元素的数组,输出这个数组和倒置后的数组
#include <iostream>
using namespace std;
int main()
{
int a[5] = { 10,20,30,40,50 };
cout << "原数组" << endl;
for (int i = 0; i < 5; i++)
{
cout << a[i] << " ";
}
cout<<endl;
int b[5];
for (int j = 0; j < 5; j++)
{
b[j] = a[4 - j];
}
cout<<"之后的数组"<<endl;
for (int k = 0; k < 5; k++)
{
cout << b[k] << " ";
}
cout<<endl;
return 0;
}