【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 arr22 = { {1,2},{10,2350} };

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

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

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

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

cout << "二维数组列数为:" << sizeof(arr0) / sizeof(arr00) << endl;

system("pause");

return 0;

}

二维数组应用案例:

案例描述:

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

语文 数学 英语

张三 100 100 100

李四 90 50 100

王五 60 70 80

代码:

//二维数组的案例

#include<iostream>

#include<string>

using namespace std;

int main()

{

int scores33 = { {100,100,100},{90,50,100},{60,70,90} };

string names3 = { "张三","李四","王五" };

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

{

int sum = 0;

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

{

sum += scoresij;

}

cout << namesi << "的总分为:" << sum << endl;

}

system("pause");

return 0;

}

相关推荐
王老师青少年编程3 小时前
2025年【江苏“信息与未来”编程思维】真题及题解(T2:坐标变换)
c++·题解·真题·坐标变换·编程思维·江苏·信息与未来
CS创新实验室5 小时前
算法、齿轮与硅基大脑:数值计算发展简史
人工智能·算法·数值计算
西门吹-禅6 小时前
java springboot N+1问题
java·开发语言·spring boot
skywalk81636 小时前
设计并实现段言的 C FFI 绑定机制 @Trae
c语言·开发语言·python·编程
海石6 小时前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
海石6 小时前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
奋发向前wcx7 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先
2023自学中7 小时前
C++ 内存追踪器
linux·c++
imbackneverdie7 小时前
AI4S不止于分子药物:以MedPeer为代表的科研基建打开产业新增量
大数据·人工智能·算法·aigc·科研·学术·ai 4s
IT笔记8 小时前
【Rust】Rust Match 模式匹配详解
java·开发语言·rust