【C++】二维数组

二维数组就是在一维数组上多加一个维度。

二维数组的定义方式

二维数组定义的四种方式:

(1)数据类型 数组名[行数][列数];

(2)数据类型 数组名[行数][列数]={{数据1,数据2},{数据3,数据4}};

(3)数据类型 数组名[行数][列数]={数据1,数据2,数据3,数据4};

(4)数据类型 数组名[ ] [列数]={数据1,数据2};

建议:以上4中定义方式,利用第二种更加直观,提高代码的可读性。

示例:
第一种定义方式:(1)数据类型 数组名[行数][列数];

第二种定义方式:(2)数据类型 数组名[行数][列数]={{数据1,数据2},{数据3,数据4}};

第三种定义方式:(3)数据类型 数组名[行数][列数]={数据1,数据2,数据3,数据4};

第四种定义方式:(4)数据类型 数组名[ ] [列数]={数据1,数据2};

二维数组数组名

二维数组数组名的作用:

(1)查看二维数组所占内存空间

(2)获取二维数组首地址

示例:

代码:

//二维数组数组名的作用:

#include<iostream>

using namespace std;

int main()

{

//查看占用内存空间大小

int arr[2][2] = { {1,2},{10,2350} };

cout << "二维数组占用内存空间大小:" << sizeof(arr) << endl;

cout << "二维数组第一行占用内存空间为:" << sizeof(arr[0]) << endl;

cout << "二维数组第一个元素所占内存空间:" << sizeof(arr[0][0]) << endl;

cout << "二维数组行数为:" << sizeof(arr) / sizeof(arr[0]) << endl;

cout << "二维数组列数为:" << sizeof(arr[0]) / sizeof(arr[0][0]) << endl;

system("pause");

return 0;

}

二维数组应用案例:

案例描述:

有三位同学(张三、李四、王五),在一次考试中的成绩分别如下表,请分别输出三名同学的总成绩。

语文 数学 英语

张三 100 100 100

李四 90 50 100

王五 60 70 80

代码:

//二维数组的案例

#include<iostream>

#include<string>

using namespace std;

int main()

{

int scores[3][3] = { {100,100,100},{90,50,100},{60,70,90} };

string names[3] = { "张三","李四","王五" };

for (int i = 0; i < 3; i++)

{

int sum = 0;

for (int j = 0; j < 3; j++)

{

sum += scores[i][j];

}

cout << names[i] << "的总分为:" << sum << endl;

}

system("pause");

return 0;

}

相关推荐
冷雨夜中漫步8 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
半桔8 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
HABuo9 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
我在人间贩卖青春10 小时前
C++之多重继承
c++·多重继承
颜酱10 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
m0_7369191010 小时前
C++代码风格检查工具
开发语言·c++·算法
yugi98783810 小时前
基于MATLAB强化学习的单智能体与多智能体路径规划算法
算法·matlab
2501_9449347310 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
DuHz10 小时前
超宽带脉冲无线电(Ultra Wideband Impulse Radio, UWB)简介
论文阅读·算法·汽车·信息与通信·信号处理
Polaris北极星少女11 小时前
TRSV优化2
算法