二维数组的应用
(1)二维数组名称的作用
a.查看数组所占用内存空间的大小
b.查看数组中元素的地址
#include<iostream>
using namespace std;
int main()
{
//(1)二维数组名称的作用
// a.查看数组所占用内存空间的大小
int arr[3][3]=
{
{2,3,5},
{4,7,8}
};
cout<<"数组所占用内存空间为:"<<sizeof(arr)<<endl;
cout<<"二维数组第一行所占用的内存空间为:"<<sizeof(arr[0])<<endl;//这里需要解释一点:[0]代表的是第一行
//这里需要解释一点:由于数组下标从0开始,[0]代表的是第一行
cout<<"二维数组第一个元素所占的内存空间为:"<<sizeof(arr[0][0])<<endl;
//同样适用于char,double,,,,,
double arr1[3][3]=
{
{2,3,5},
{4,7,8}
};
cout<<"数组所占用内存空间为:"<<sizeof(arr1)<<endl;
cout<<"二维数组第一行所占用的内存空间为:"<<sizeof(arr1[0])<<endl;
cout<<"二维数组第一个元素所占的内存空间为:"<<sizeof(arr1[0][0])<<endl;
char arr2[3][3]=
{
{2,3,5},
{4,7,8}
};
cout<<"数组所占用内存空间为:"<<sizeof(arr2)<<endl;
cout<<"二维数组第一行所占用的内存空间为:"<<sizeof(arr2[0])<<endl;
cout<<"二维数组第一个元素所占的内存空间为:"<<sizeof(arr2[0][0])<<endl;
// b.查看数组中元素的地址
cout<<"第一个元素的地址为:"<<&arr[0][0]<<endl;
cout<<"第一行元素的首地址为:"<<&arr[0]<<endl;
cout<<"数组中所有元素的首地址为:"<<&arr<<endl;
return 0;
}
运行结果如下:
(2)二维数组在现实生活中的应用
主要用途,可以用于成绩的计算
#include<iostream>
#include<string>
using namespace std;
int main()
{
int nump,sub,sum;
cout<<"请输入总人数和总科目:";
cin>>nump>>sub;//输入总人数和总的科目数
string arr[nump];
int arr2[nump][sub];
int arr3[nump];//用于存放总分数
for(int i=0;i<nump;i++)
{
sum=0;
cin>>arr[i];
for(int j=0;j<sub;j++)
{
cin>>arr2[i][j];
sum+=arr2[i][j];
}
arr3[i]=sum;
cout<<endl;
}
for(int i=0;i<nump;i++)
{
cout<<arr[i]<<" ";
for(int j=0;j<sub;j++)
{
cout<<arr2[i][j]<<" ";
}
cout<<arr[i]<<"的总分数为:";
cout<< arr3[i];
cout<<endl;
}
return 0;
}
输出结果如下: