二维数组_基本概念|学习笔记

简介: 快速学习二维数组_基本概念

发者学堂课程【C语言学习教程二维数组_基本概念】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/387/detail/4900


二维数组_基本概念


内容介绍:

二维数组的定义

二维数组的初始化

二位数字的赋值

二维数组的访问


一、二维数组的定义

数组的数组,二维数组中的每个元素是类型相同的一维数组二维数组的定义

类型说明符数组名[常量表达式1][常量表达式2];

int a[3][4];定义了一个有3个元素的二维数组

数组中的每一个元素又是一个包含4个整形变量的一维数组(先行后列)

数组a中有12个元素,分别是a[0][0],a[0][1],a[0][2],a[0][3],

                           a[1][0],a[1][1],a[1][2],a[1][3],

a[2][0],a[2][1],a[2][2],a[2][3]

例子:3x4数组的表示


0

1

2

3

0

0,0

0,1

0,2

0,3

1

1,1

1,2

1,3

1,4

2

2,1

2,2

2,3

2,4


二、二维数组的初始化

1.分行给二维数组赋初值:

int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

2.按数组排列顺序给各元素赋初值:

int a[3][4]={1,2,3,45,6,7,8,9,10,11,12};

二维数组在内存中的物理顺序仍然是连续的,逻辑结构看似是矩阵型,内存结构实际是连续的,所以允许进行类似于与一维数组同样的、依次放入数据的处理。

3.对部分元素赋初值:

int a[3][4]={{1},{5)},{9}};

int a[3][4]={1,2};(其他元素被默认赋值为0)

4.极端部分初始化:

int a[3][4]={};(所有元素赋值为0)


三、二位数字的赋值

1.对单个元素进行赋值:

int a[3][4]; a[0][0]=1; a[0][1]=2;

2.用循环语句进行赋值:

int a[3][4];

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

for (int j=0; j<4; j++) {

scanf("%d",&a[i] [j] );

}


四、二维数组的访问

单个数组元素的访问:

int a[3][4]; printf{"%d\n",a[0][1]};

二维数组访问每一个元素可以通过双层循环

遍历打印二维数组每一一个元素如下:

int arr[3][5],i,j;

 for(i=0; i<3; i++){ //外层循环控制哪一个子数组

    for(j=0; j<5; j++) { //内层循环控制子数组中每个元素              

printf("%d ",arr[i][j]);

}

print("\n");

}

例:

int array[3][4] = {{1,2,3,4],{5,6,7,8],{9,10,11, 12}};

for (int i=Ø; i<3;i++) {

    for (int j=0; j<4;j++) {

       printf("array[%d] [%d] = %d",i,j,

array[i][j]);

}

printf("\n") ;

}

相关文章
|
网络协议 网络安全 网络架构
移动宽带不借助软件和公网服务器实现基于IPV6的内网穿透
本教程指导如何设置路由器以支持IPv6访问:首先确保上网方式为自动获取IP,接着在路由器设置中开启IPv6功能,并关闭可能阻碍连接的防火墙。最后,在光猫管理界面同样关闭防火墙以确保无障碍的IPv6访问路径。操作时请注意网络安全。
移动宽带不借助软件和公网服务器实现基于IPV6的内网穿透
|
机器学习/深度学习 存储 数据可视化
能够简化数据科学的6种工具
新的工具捆绑了数据清理,拖放式编程以及云计算,可以帮助任何熟悉电子表格的人充分利用数据科学的力量。
370 0
|
容器 安全 Kubernetes
安全容器在边缘计算场景下的实践
导读:随着云计算边界不断向边缘侧延展,传统 RunC 容器已无法满足用户对不可信、异构工作负载的运行安全诉求,边缘 Serverless、边缘服务网格等更是对容器安全隔离提出了严苛的要求。本文将介绍边缘计算场景如何构建安全运行时技术基座,以及安全容器在架构、网络、监控、日志、存储、以及 K8s API 兼容等方面的遇到的困难挑战和最佳实践。
|
2天前
|
数据采集 人工智能 安全
|
12天前
|
云安全 监控 安全
|
3天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1023 151
|
3天前
|
编解码 人工智能 机器人
通义万相2.6,模型使用指南
智能分镜 | 多镜头叙事 | 支持15秒视频生成 | 高品质声音生成 | 多人稳定对话
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1720 9