【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;

}

相关推荐
Swift社区7 分钟前
从 0 到 1 构建一个完整的 AGUI 前端项目的流程在 ESP32 上运行
前端·算法·职场和发展
低调小一8 分钟前
Kuikly 小白拆解系列 · 第1篇|两棵树直调(Kotlin 构建与原生承载)
android·开发语言·kotlin
RTC老炮11 分钟前
webrtc弱网-BitrateEstimator类源码分析与算法原理
网络·人工智能·算法·机器学习·webrtc
郝学胜-神的一滴12 分钟前
Linux下的阻塞与非阻塞模式详解
linux·服务器·开发语言·c++·程序人生·软件工程
程序员烧烤15 分钟前
【leetcode刷题007】leetcode116、117
算法·leetcode
yanqiaofanhua24 分钟前
C语言自学--预处理详解
c语言·开发语言
沐知全栈开发32 分钟前
Vue3 计算属性
开发语言
冰糖雪梨dd1 小时前
JS中new的过程发生了什么
开发语言·javascript·原型模式
ghie90901 小时前
基于libsvm的支持向量机在MATLAB中的实现
算法·支持向量机·matlab
川石课堂软件测试2 小时前
全链路Controller压测负载均衡
android·运维·开发语言·python·mysql·adb·负载均衡