黑马程序员---学习笔记5:二维数组

黑马程序员———C语言———【二维数组、字符串】 ————————————————————————————————————————————————————————————————————————————— 一、二维数组的定义 1、概念:可以看做是一个特殊的一维数组,这个一维数组的每个元素又是一个一维数组 2、定义:数据类型   数组名 [ 第一维的长度(行)] [ 第二维的长度(列)] 例如:int a[2][3]; 1)这是一个特殊的 阅读详情

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-


二维数组:
可以看作是一个特殊的一维数组,这个一维数组的每一个元素又是一个一维数组

定义:
数据类型 数组名【第一维长度(行)】【第二维长度(列)】

注意事项:
1)数组名不能与常量同名
2)数组的长度可以是常量表达式(Xcode特有的,长度可以是初始化的变量)
3)长度可以加入宏定义

初始化:
1)定义的同时初始化
(1)完全初始化
int [2][3]={{23,34,34},{1,2,4}}
连续赋值:int [2][3]={1,2,3,4,5,6}以列数位基础进行截断,自动分组
可以省略第一维:int [][3]={1,2,3,4,5,6}
(2)部分初始化
int [3] [4]={1};第一个是1,后面的系统自动补0
二维数组中,第一维可以省略,第二维不可以

2)先定义,后初始化
Int a[3][4]; a[0][0]=2;

二维数组的遍历:二维数组的元素也称为双下标变量。
int n[a][b];
for (int i=0;i<a;i++)
{
for(int j=0;j<b;j++)
{
printf("%d",n[i][j]);
}
}
存储方式:
1)计算机会给而二维数组分配一段连续的存储空间。
2)数组名代表数组的首地址,从首地址位置,依次存入第一行,第二行……
3)每一行的存储方式,从行首地址开始,依次存入第一个元素,第二个元素……
4)每个元素占用相同的字节数(依据数据类型)
5)数组中元素之间的地址是连续的。

数组的首地址:数组名
第一行的首地址:第一行第一个元素的首地址=数组首地址=&a[0][0]=&a[0]
第二行的首地址:第二行第二个元素的首地址=&a[1][0]=&a[1]

二维数组占用的总字节数:
1)每行占的字节数之和
2)元素个数*元素类型
3)sizeof(数组名)【最方便】

每一行的字节数:
1)sizeof(a[0])
2)列数*元素类型

每一行有多少列:
1)行的总字节数/数据类型sizeof(a[0])/sizeof(int);

计算行数:sizeof(a)/sizeof(a[0]),总字节数/每一行的字节数

黑马程序员_基础测试 -------android培训、java培训、期待与您交流! ---------- 阅读详情

相关推荐

黑马程序员入学Java知识——精华总结

黑马程序员入学Java知识——精华总结   J2SE部分,Java高新技术部分,7K面试题部分等黑马入学要求的知识点总结!   一、黑马程序员—java概述与基础知识 6 1、何为编程? 6 2、Java语言概述,历史、特点 6 3、什么是跨平台性?原理是什么?JVM 7 4、Jre和Jdk的区别? 7 5、java虚拟机JVM 8 6、 Java程序运行机制 8 7

u014563778的专栏 3977

C语言:二维数组及所占用的字节

以数组作为数组的元素“数组中的数组”即二维数组。 语法如下: 类型 数组标识[一维数组长度][二维数组长度] 如:float rain[5][12] 二维数组占用的字节数计算方法为:二维数组单个元素所占的字节 *元素个数。上面声明的rain[5][12],共5*12=60个元素,float类型占用4个字节,因此为 4*60=240个字节。 下面的代码片段有两个实例,一个计算5年的总降水量、5年中月平均降水量: #include <stdio.h> /* 时间:2022-04-10 .

sgbl888的博客 8842

高效管理Node.js版本与pnpm安装全攻略

本文提供了一套高效管理Node.js版本与pnpm安装的完整攻略。针对开发中常见的版本冲突和磁盘空间问题,详细介绍了如何在Windows和Ubuntu系统上安装并配置pnpm,并重点讲解了如何利用其内置的`pnpm env`命令进行Node.js版本管理,实现一站式环境管理,提升开发效率。

weixin_28840591的博客 314

c语言中数组长度的计算

c语言中数组长度的计算 一维数组  计算数组的长度:       sizeof(数组名):得到这个数组占用内存的总长度       公式:        sizeof(数组名) / sizeof(数组类型); 二维数组 二维数组计算列数:     &nb...

yearling的博客 6791

Token算力工厂建设方案:从GPU集群到计量计费的全链路设计

在AI应用从“租核”走向“买Token”的范式转换中,算力交付的核心指标已不再是vCPU或GPU实例,而是单位时间内的Token产出量与单Token成本。这一变化推动基础设施从资源租赁向计件生产演进,要求GPU集群、推理引擎、调度系统、计量计费等模块像工厂产线一样协同运转。本文从硬件异构混部、存储网络设计、推理引擎调优、Token网关与配额管理、稳定性治理等维度,系统拆解如何构建一座可量化、可计费、可扩展的Token算力工厂,并给出分三期落地的推进节奏,帮助架构师与技术管理者在AI基础设施建设中实现成本可控

weixin_29095587的博客 265

Unity新手必看:5分钟搞定TextMeshPro中文乱码,告别小方块(附7000+常用字库)

本文详细介绍了Unity中TextMeshPro中文乱码问题的解决方案,包括快速生成中文字体的步骤和优化技巧。通过使用支持中文的.ttf字体文件和自定义字符集,开发者可以在5分钟内解决TMP显示小方块的问题,提升游戏或应用的文本显示效果。

weixin_33095355的博客 363

二维数组地址的计算

在一个C语言程序中,有结构类型STUDENT的定义和结构数组allstudents的声明如下: struct STUDENT { char name[8]; int number; } STUDENT allstudents[10][50]; allstudents是一个二维数组,它的每个元素都是包含name和number的结构类型。已知在C语言中,二维数组使用以行序为

SSPUmyl的博客 1万+

招标信息爬取工具

一个能帮你节省大量时间的实用小工具,我自己用了挺久,分享出来给有需要的朋友

qq_56877290的博客 837

黑马程序员—— 4,二维数组,面向对象,制作帮助文档,静态代码块,构造代码块,构造函数,单例设计模式

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------               黑马程序员——  4,二维数组,面向对象 二维数组 格式:int[][] a=newint[5][9];      二维数组名字a,其中有5个一维数组,      每个一维数组里面有9个元素      一维数组的名称分别为:a[0],a[1],a[2],a

dangaodeaiyi的专栏 1123

Kaamel白皮书:IoT设备安全隐私评估实践

明确评估的目的和预期结果。

kaamelai的博客 1318

基于强化学习的多无人机路径规划

我们使用了Dueling Double Deep Q-Network(DDDQN)算法来训练智能体,这个算法在深度Q学习算法的基础上进行了升级,具有更快的收敛速度和更好的性能。本文提出了一种基于强化学习的算法,实现了多无人机路径规划,并提供相应的MATLAB代码。通过基于强化学习的多无人机路径规划算法,我们能够高效地解决复杂环境下的任务需求,并在实际应用中取得了良好的效果。首先,我们定义了状态空间和动作空间。实验结果表明,我们的方法能够有效地解决多无人机路径规划问题,提高了任务完成的效率和准确率。

DjjPython的博客 821

黑马程序员C++学习笔记

C++基础入门 1 C++初识 1.1 第一个C++程序 编写一个C++程序总共分为4个步骤 创建项目 创建文件 编写代码 运行程序 1.1.1 创建项目 ​ Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开 1.1.2 创建文件 右键源文件,选择添加->新建项 给C++文件起个名称,然后点击添加即可。 1.1.3 编写代码 #include<iostream> using namespace std; int main() { cout &

weixin_46015291的博客 6457

ASProxy64.dll导致jetbrains家的IDE都无法打开。

摘要:在Windows11系统中,JetBrains IDE无法启动,报错指向ASProxy64.dll文件。该第三方DLL被注入到JVM原生层,导致内存访问冲突(错误代码0xc0000005)。经排查发现此文件来自Astrill软件。解决方案为卸载Astrill后重启电脑,问题得以解决。该案例表明第三方DLL注入可能影响IDE正常运行,卸载相关软件是最直接的解决方法。(149字)

猿小白的博客 937

学习笔记:黑马程序员C++从0到1(5~6)

学习笔记:黑马程序员C++从0到1(5~6) 5.数组 6.函数

SEEK的博客 1969

Python爬虫实战:抓取统计数据并生成年度对比图表详解

国家统计局网站(静态HTML页面Excel文件JSON接口(部分新版API)我们将重点演示从统计公报页面抓取数据,结合解析Excel文件,实现多种数据格式爬取处理。本文从零开始搭建了一个爬取国家统计数据并制作年度对比图表的完整流程。读者可以根据实际需求调整爬取目标,丰富数据分析维度,甚至结合机器学习模型预测未来趋势。欢迎你在评论区留言分享你的爬虫实践,或提出改进建议!

2201_76125261的博客 1001

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

黑马程序员——Swift学习笔记:高级类型

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 参考书:《Swift基础教程》Boisy G.Pitre 著 一、可选类型 可选是一种类型的修饰符,允许某个类型的变量的值为空值nil ★C语言和C++中的空值是NULL,Objective-C中nil表示空指针,Swift中nil表示值缺失。 声明

kangxilail007的博客 489

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Visual Studio 2022版本 B站黑马程序员C++自学分享-第一阶段(主要包括:自己敲的代码、通过注释来备注上自己对代码的理解)

黑马的课程里面分为了三大阶段 一、第一阶段 C++基础语法入门 对C++有初步了解,能够有基础编程能力 二、第二阶段 C++核心编程 介绍C++面向对象编程,为大型项目做铺垫 三、第三阶段 C++提高编程 介绍C++泛型编程思想,以及STL的基本使用 ※※※我会一个阶段发一个文章,一共发布三个文章来把学习的代码还有自己在代码旁边标注的对于这些代码的理解和心得体会一起分享给大家!!!

codeLearnerEternally的博客 3857

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

黑马程序员——c语言基础:二维数组

1.二维数组的基本概念和使用  二维数组:可以看做是一个特殊的一维数组,这个数组的每个元素又是一个一维数组。  二维数组的定义:     类型说明符 数组名[常量表达式1][常量表达式2]     其中常量表达式1代表第一维下标长度,常量表达式2表示第二维下标长度。     例如:int a[3][4]; // 说明了一个三行四列的数组,数组名为a,其下标变量的类型

gamhunter的博客 1052

【黑马程序员JAVA笔记+完整代码】DAY04 数组

黑马Java网课笔记

CherryTaylor的博客 588

java基础黑马程序员经典题目

今天偶然看到几道传智黑马程序员-----java基础的题目,觉得不错,和大家分享一下吧。 1、请列举您了解的一些排序算法,并用Java语言实现一个效率较高的。 2、定义一个二维int数组,编写代码获取最小元素。 3、判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串 求斐波那契数列第n项

郎建伟的博客 1138

【黑马程序员】【C语言】二维数组

1. 什么是二维数组 一个数组能表示一个班人的年龄,如果想表示很多班呢? 什么是二维数组?int ages[3][10]; 三个班,每个班10个人 相当于3行10列 相当于装着3个一维数组 2.二维数组的定义 二维数组定义的一般形式是:      类型说明符 数组名[常量表达式1][常量表达式2]   其中常量表达式1表示第一维下标的长度,常量表达式2 表示

MarsII的iOS技术博客 345

《黑马程序员》C++基础入门(一)

《黑马程序员》C++基础入门(一)1 C++初识1.4 常量 1 C++初识 1.4 常量 作用:用于记录程序中不可更改的数据 C++定义常量两种方式 #define 宏常量: #define 常量名 常量值 通常在文件上方定义,表示一个常量 const修饰的变量 const 数据类型 常量名 = 常量值 通常在变量定义前加关键字const,修饰该变量为常量,不可修改 ...

sinat_37281674的博客 1170

黑马程序员JAVA学习日记day08

本文介绍了Java基础中的二维数组和面向对象编程的核心概念。二维数组部分讲解了静态初始化和动态初始化的语法格式及遍历方法。面向对象部分重点阐述了类与对象、封装、this关键字、构造方法等核心概念,并通过文字版格斗游戏案例演示了面向对象编程的实际应用。最后通过商品对象数组的案例展示了对象数组的使用方法。文章采用理论与实践相结合的方式,既有语法讲解又有代码示例,适合Java初学者学习参考。

2401_86935697的博客 882

《黑马程序员》二维数组定义及遍历

class TwoDimensionArrayDemo2 { /* 二维数组练习: 二维数组的定义和遍历取值 其实可以把二维数组看做是数组中的数组,它可能看成是一个数组里面的元素就是一维数组 刚好把函数的重载和  */ public static void main(String[] args) { //二维数组的

青云志,我心不死,必度青天... 701

【学习笔记/自用】黑马程序员javase2023版-基础

黑马程序员2023版笔记,省略简单内容,笔记大部分为易错的地方。

qq_41014040的博客 4539
上一篇: 黑马程序员---学习笔记4:数组
下一篇: 黑马程序员---学习笔记6:字符串
七分热度_HD
博客等级 码龄14年 12粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值