首页 > 其他分享 >C语言中数组的基础知识

C语言中数组的基础知识

时间:2023-08-15 19:32:02浏览次数:38  
标签:初始化 定义 temp 元素 基础知识 数组名 数组 C语言

数组是一种集合数据类型,它由多个元素组成,每个元素都有相同的数据类型,占有相同大小的存储单元,且在内存中连续存放。每个数组有一个名字,数组中的每个元素有一个序号(称为下标),表示元素在数组中的位置,数组的维数和大小在定义数组时确定,程序运行时不能改变。

一维数组的定义形式为:

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

其中,“类型说明符”指定数组元素的类型;“数组名” 的命名规则与变量一样;“常量表达式”的值表示数组元素的个数,必须是一个整数。例如:

float temp[10];

在C程序中,数组元素的下标总是从0开始的,如果一个数组有n个元素,则第一个元素的下标是0,最后一个元素的下标是n-1。例如,在上面定义的temp 数组中,第一个元素是temp[0],第二个元素是temp[1], 依此类推,最后一个元素是temp[9]。 访问数组元素的方法是通过数组名及数组名后的方括号中的下标。例如:

temp[4]= 1.5; //设置上面定义的数组temp的第5个元素值为1.5

程序员需确保访问数组元素时下标的有效性,访问一个不存在的数组元素,可能会导致严重的错误。

定义数组时就给出数组元素的初值,称为初始化,数组的初始化与简单变量的初始化类似。初值放在一对花括号中,各初值之间用逗号隔开,称为初始化表。例如:

int demo[ ]= {1,2,3,5,7,11,13};

对于没有给出数组元素个数而给出了初始化表的数组定义,编译器会根据初值的个数和类型,为数组分配相应大小的内存空间。初始化表中值的个数必须小于或等于数组元素的个数。对于"int tom[10]= {1,2,3,5,7};",前5个数组元素的初值分别为1,2,3,5,7, 后5个元素的初值都为0。

二维数组可视为是一个矩阵,定义形式为:

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

其中,“类型说明符”指定数组元素的类型,“常量表达式1”指定行数,“ 常量表达式2”指定列数。例如,可以定义一个二维数组:

int Dim[3][4]; //该二维数组表示3行4列

二维数组可以只对部分元素赋值,未赋值的元素自动取 0 值。这个数组在内存中占用能存放12个int类型元素且地址连续的存储单元。C语言中二维数组在内存中按行顺序存放。可以用sizeof计算数组空间的大小,即字节数。

C 语言中的多维数组基本的定义是以数组作为元素构成的数组,二维数组的数组元素是一维数组,三维数组的数组元素是一个二维数组,以此类推。也就是说,多维数组用的是一个嵌套的定义。

标签:初始化,定义,temp,元素,基础知识,数组名,数组,C语言
From: https://blog.51cto.com/zdytesting/7092724

相关文章

  • C语言指针初级学习笔记
    目的在于了解指针的基本概念和一些用法下面是本阶段导图:基本概念inta=10;int*p=&a;指针就是地址,p为指针变量,存放地址的一个最小的内存单元为一字节32位机器指针所占内存4字节64位机器指针所占内存8字节指针类型1.指针决定访问指针类型决定了指针解引用访问的字节大小int*......
  • Linux之脚本的函数数组
    目录一、shell函数1.1函数的定义二、数组三、冒泡一、shell函数将命令序列按格式写在一起可方便重复使用命令序列shell函数的定义调用函数的方法注意事项直接写函数中调用函数直接写函数名同名函数后一个生效调用函数一定要先定义只要先定义了调用的其他......
  • shell函数与数组
    目录shell函数与数组shell函数函数定义函数递归阶乘题目shell数组冒泡排序shell函数与数组shell函数函数定义将命令序列按格式写在一起可方便重复使用命令序列shell函数定义使用函数可以将大模块分割成小模块函数的组成:函数名、函数体[root@localhost~]#helpfuncti......
  • 力扣- 删除有序数组中的重复项
    给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:更改......
  • 【Linux技术专题】「必备基础知识」带你仔细梳理一下平时排查问题查询日志的基本操作
    Linux文件与目录管理了解和熟悉Linux系统的文件存储结构、权限设置和命令行工具,将有助于快速定位和解决与日志相关的问题,提高系统管理员和开发人员的工作效率。文件路径:Linux系统的日志文件按规定的目录结构组织。了解不同日志文件的存储位置和命名规则,可更快地找到所需的日志文件......
  • javascript 高级编程系列 - 定型数组
    定型数组是一种用于处理数值类型数据的专用数组,最早是在webGL中使用的,WebGL是OpenGLES2.0的移植版,在web页面中通过<canvas>元素来呈现它。定型数组也被一同移植而来,其可为javascript提供快速的按位运算。在javascript中,数字是以64位浮点格式储存的,并按需转换为32位整数,所以算术......
  • javascript 高级编程系列 - 数组
    1.Array.of创建数组constitems=Array.of(1,2,3);console.log(items);2.Array.from将可迭代对象或类数组对象转换为数组constitems=Array.from('123');console.log(items);3.Array.prototype.find&Array.prototype.findeIndex在数组中查找符合条件的第一......
  • C/C++基础知识点——设计原则及设计模式
    如何实现模块间高内聚、低耦合?封装与抽象;添加中间层;模块化;设计思想与原则单一职责;接口隔离原则;依赖倒置;迪米特原则;多用组合少用继承;设计模式:观察者模式设计原则及设计模式六大设计原则:单一职责原则;里氏替换原则;开闭原则;依赖倒置原则;接口隔离原则;最少知识原则。......
  • c语言精通学习「2」: 位操作
     1.位操作符包括  &0&0=00&1=01&1=1特定位清零如11010101&11100111=11000101|0|0=0  1|0=1  1|1=1特定位置一~~0=1~1=0逻辑取反是!,真变成加、假变成真^ 1^1=00^0=11^0=0特定位取反<<>> 左移或......
  • vue + element-ui 的from表单嵌套数组的验证问题
    在vue+element-ui/plus的项目中,有的时候会出现表单自定义增加数组字段,并要对新增加的字段添加相关验证。举个例子//结构data(){return{form:{name:'',Param:[{id:0,label:'',Itemtype:0,},......