网站首页 > 基础教程 正文
二维数组
一位数组可以理解为一列火车,二维数组是什么呢?
二维数组就是在一维数组的基础上增加一个维度,举个例子:
咱们看到的九宫格就是二维数组,在”行“的基础上增加“列”通常是矩阵的样子。
一维数组是:arr[]={,,,};
那么二维数组通过上述的方法,他们的语法是什么样子呢?
二维数组:arr[i] [j] ={ };
定义方式:
1.数据类型 数组名 【行数】【列数】;
int arr[3] [4];
如果arr[1] [2]=1;那么在矩阵中展示为
演示矩阵:
0010
0000
0000
代码演示:
for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
cout<<arr[i] [j]<<endl;
}}
2.数据类型 数组名 【行数】【列数】={{数据1,数据2},{数据3,数据4}....}
int arr [2] [5]={{1,2,3,4},{5,6,7,8}}
如果 arr[1] [2]=4,在矩阵中演示为:
演示矩阵:
00000
00400
代码演示:
for(int i=0;i<2;i++){
for(int j=0;j<5;j++){
cout<<arr[i] [j]<<“ ”;
}
cout<<endl;
}
3.数据类型 数组名 【行数】【列数】={数据1,数据2,数据3,数据4....}
int arr [2] [5]={1,2,3,4,5,6,7,8}
如果 arr[0] [3]=8,在矩阵中演示为:
演示矩阵:
00080
00000
代码演示:
for(int i=0;i<2;i++){
for(int j=0;j<5;j++){
cout<<arr[i] [j]<<“ ”;
}
cout<<endl;
}
4.数据类型 数组名 【】【列数】={数据1,数据2,数据3,.....}
int arr [] [3]={1,2,3,4,5,6}
机器可以通过列数来判断行数,获得2行。注:列数不是省去
代码演示:
for(int i=0;i<2;i++){
for(int j=0;j<5;j++){
cout<<arr[i] [j]<<“ ”;
}
cout<<endl;
}
二维数组数组名用途
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;
二维数组的行数
cout<<"二维数组的行数为:"<<sizeof(arr)/sizeof(arr[0])<<endl;
二维数组的列数
cout<<"二维数组的列数为:"<<sizoef(arr)/sizeof(arr[0] [0])<<endl;
2.可以查看二维数组的首地址
cout<<"二维数组首地址:"<<arr<endl;
cout<<"int类型的二维数组首地址:"<<(int)<<arr<<endl;
cout<<"二维数组第一行首地址:"<<arr[0]<endl;
cout<<"二维数组第二行首地址:"<<arr[1]<endl;
cout<<"二维数组第一元素首地址:"<<arr[0] [0]<endl;
猜你喜欢
- 2024-11-12 C语言之一维数组 c语言一维数组排序
- 2024-11-12 总结系列合集:C++中的动态数组 c+ 动态数组
- 2024-11-12 C语言结构体,如何定义结构体数组?linux C第62讲
- 2024-11-12 数组不可以直接赋值,为什么结构体中的数组却可以?
- 2024-11-12 C/C++编程笔记:C数组、字符串常量和指针!三分钟弄懂它
- 2024-11-12 数据结构入门:数组介绍 数据结构之数组
- 2024-11-12 再说,数组 数组+数组
- 2024-11-12 c++入门教程:c++中的动态数组 c++动态数组怎么用
- 2024-11-12 c++数组指导 c++数组的定义与使用
- 2024-11-12 C++基础概念:指针与数组,指针运算,指针与机器物理地址
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- deletesql (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)