初学者-C语言基础练习(八)——C语言之多维数组


前言


有时候数组不止一维,像一个正方体,由长宽高,而不是一条直线。
在许多数据中,也不是单一的,对于这一类数据,我们就要用到多维数组来表示。

一、高维数组

定义一个二维数组的方法就是在一维数组定义的数组后面再加上一个方括号和维数说明。
如:float shuzu[3][8];

解析:这个数组可以看作3个连续的一维数组,每个一维数组具有八个元素。存储时,先存储第一个8个,第二行再是第二个8个,最后是第三个。这里我们可以举个例子来讲。
例子:

#include <stdio.h>
main()
{
	int array[3][3]={1,2,3,4,5,6,7,8,9};
	int i,j;
	for(i=0;i<3;i++)
	{
		for(j=0;j<3;j++)
		{
			printf("%3d",array[i][j]);
		}
		printf("\n");
	}
}

效果演示:
在这里插入图片描述
可以看出,二维数组是按行存储的。

当然还有三维数组,三维也就是立方体,如:int array[2][3][4];
这个数组的意思就是三维,怎么理解呢。先把前面两个数字当成二维数组,也就是一个平面,第三个数字就是往高处长,形成立方体,所能存储元素的个数就是234=24个。

二、字符串数组

上面说的是存放数值的,接下来说一下存储字符串的。

字符串数组

字符串数组其实也就是一个二维数组,因为他的一些特性,所以要来单独说。看代码:

#include <stdio.h>
main()
{
	char s[10][10];
	int i;
	for(i=0;i<10;i++)scanf("%s",s[i]);
}

分析:代码是没错的,字符串输入时可以不用加&。
还有一个,为啥我们只用一个一维数组来存放,不是说二维数组吗?这是因为字符串在内存里的地址可以用他的名字来表示,简而言之就是输入字符串时可以少一维。


总结

今天的多维数组基础也讲到这里,明天来讲讲字符串数组的其他问题。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 学习51单片机和C语言编程,可以帮助我们更深入地理解嵌入式系统的原理和工作方式。对于初学者来说,掌握一份适合自己的学习资料非常重要。 要学习51单片机-C语言版,可以阅读《手把手教你学51单片机-C语言版pdf》这本电子书,这本书内容丰富,讲解详细,配合实例编程,非常适合初学者自学。以下是学习本书的几个关键点: 第一,掌握基本的硬件知识,包括单片机的结构和特性,尤其是各种寄存器的作用和配置方法。 第二,了解C语言编程基础,尤其是语法、数据类型、运算符、控制结构、函数等,这是编写单片机程序的基础。 第三,通过实例编程加强对知识的理解和运用能力。例如,可以尝试写一些简单的IO控制、定时器中断、串口通讯等程序。 第四,可以搭配相应的开发板和开发环境进行实践学习。例如,可以使用STC89C51开发板和Keil或SDCC开发环境。 总之,《手把手教你学51单片机-C语言版pdf》这本电子书是一个不错的学习资料,但也需要具备一定的基础知识和耐心,可以结合其他资料和实践不断提高自己的能力。 ### 回答2: 学习51单片机-c语言版, 需要基础的C语言编程知识。在学习前,先要熟悉C语言的数据类型、循环、判断及函数等语法结构,并掌握C语言的编写方法。 在学习51单片机-c语言版之前,需要准备好学习环境,如下载并安装Keil软件, 安装并关联好相应的单片机模拟器。Keil软件中有类似于记事本的编辑窗口用来编写C语言代码, 以及编译,调试和下载程序到单片机等功能。 在学习时,可以选择一些简单的例程开始学习,逐步理解其代码逻辑,了解基本的寄存器操作和中断等知识。可以从LED灯等简单的实验开始,逐渐增加难度和功能的复杂度。 同时,可以参考一些权威的学习资料如《单片机原理与应用》、《51单片机学习与应用》等相关书籍,或结合网络资源进行学习。在学习过程中,需要勤加练习,多编写代码进行实践,同时多与他人交流学习体会和技术问题。通过坚持不断的学习和练习,便可以逐步掌握51单片机-c语言版编程技巧,提高自己的单片机应用开发能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

通信好难学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值