数组:
part 1 一维数组:
1.定义方式 2.数组名 3.案例
part 2 二维数组:
1.定义方式 2.数组名 3.案例
🐵🐵🐵---------------------------------分割线-----------------------------------🐵🐵🐵
part 1 一维数组:
1.定义方式
方法一:
#include<iostream>
using namespace std;
int main(){
int arr[5];
arr[0]=1;
arr[1]=2;
//......
arr[4]=5;
}
方法二:
#include<iostream>
using namespace std;
int main(){
int arr[5]={1,2,3,4,5};
}
方法三:
#include<iostream>
using namespace std;
int main(){
int arr[]={1,2,3,4,5};
}
2.数组名
用途:
1.可以统计整个数组在内存中的长度
整个数组占用内存空间:sizeof(arr)
每个元素占用内存空间:sizeof(arr[0])
元素数量:sizeof(arr)/sizeof(arr[0])
2.可以获取数组在内存中的首地址(数组名是地址)
整个数组地址:int(arr)
某个元素地址:int(&arr[0])
应用----五只小猪称体重
在一个数组中输入五只小猪的体重,输出其中最重的体重。
#include<iostream>
using namespace std;
int main(){
int arr[5],max;
cin>>arr[0]>>arr[1]>>arr[2]>>arr[3]>>arr[4];
for(int i=0;i<5;i++){
if(max<arr[i]){max=arr[i];}
}
cout<<max;
}
应用----数组元素逆置
请声明一个5个元素的数组,并且将元素逆置。
#include<iostream>
using namespace std;
int main(){
int arr[5],mid;
cin>>arr[0]>>arr[1]>>arr[2]>>arr[3]>>arr[4];
for(int i=0;i<3;i++){mid=arr[i];arr[i]=arr[4-i];arr[4-i]=mid;}
cout<<arr[0]<<arr[1]<<arr[2]<<arr[3]<<arr[4];
}
应用----冒泡排序
#include<iostream>
using namespace std;
int main(){
int arr[9]={4,2,8,0,5,7,1,3,4};
for(int i=0;i<9;i++){
for(int j=0;j<9-i-1;j++){
int temp;
if (arr[j]>arr[j+1]),{temp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
}
}
}
for(int t=0;t<9;t++){cout<<arr[t]<<endl;}}
part 2 二维数组:
1.定义方式
方法一:
#include<iostream>
using namespace std;
int main(){
int arr[2][3];
arr[0][0]=1;
arr[0][1]=2;
arr[0][2]=3;
arr[1][0]=1;
arr[1][1]=2;
arr[1][2]=3;
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){cout<<arr[i][j];}}
}
方法二:
#include<iostream>
using namespace std;
int main(){
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];}
}
}
方法三:
#include<iostream>
using namespace std;
int main(){
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];};}
}
方法四:
#include<iostream>
using namespace std;
int main(){
int arr[][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];};}
}
2.用途:
1.可以统计整个数组在内存中的长度
整个数组占用内存空间:sizeof(arr)
每行占用内存空间:sizeof(arr[0])
每个元素占用内存空间:sizeof(arr[0][0])
行数:sizeof(arr)/sizeof(arr[0])
列数:sizeof(arr[0])/sizeof(arr[0][0])
元素数量:sizeof(arr)/sizeof(arr[0][0])
2.可以获取数组在内存中的首地址(数组名是地址)
整个数组地址:int(arr)
某行数组地址:int(arr[0])
某个元素地址:int(&arr[0][0])
应用----考试成绩统计
#include<iostream>
using namespace std;
int main(){
int arr[3][3]={{100,98,78}{44,78,45}{100,100,100}};
for(int i=0;i<3;i++){
int sum=0;
for(int j=0;j<3;j++){
sum+=arr[i][j];
}cout<<sum;
}
}