知识点讲解
 
       数组的特征
知识路径: > 计算机科学基础 > 常用数据结构 > 数组 > 数组和矩阵 > 
被考次数:15次
被考频率: 高频率
总体答错率: 51%
知识难度系数:
考试要求: 掌握     
相关知识点:4个
        数组是一组具有相同类型的变量,其中各个元素共用一个数组名,但是用不同的下标来访问(引用)。如int a[6];说明了一个一维整型数组a,其中各个整型元素组成了一个向量:a[0], a[1], a[2], a[3], a[4], a[5]。
        数组还可以是多维数组,但二维以上的多维数组不是线性结构。
        n维数组是一维数组(向量)的推广。二维数组(也叫矩阵)可看作其元素是一维数组的一维数组(线性表、向量),n维数组可看作其元素是n-1维数组的一维数组(线性表、向量)。n维数组的每个元素处于n个向量中,有n个前驱,也有n个后继。
        对二维数组来说,给定维数和下标,如何得到数组元素存储位置?设每个数组占用L个内存单元,则二维数组Amn按行优先顺序(下标从0开始),aij的地址为:
        LOC(i, j)=LOC(0, 0)+(i*n+j)*L
        二维数组Amn按列优先顺序(下标从0开始),aij的地址为:
        LOC(i,j)=LOC(0, 0)+(j*m+i)*L
        对n维数组而言,一旦规定了数组的维数和各维的上下界限,便可为它分配存储空间;反之,只要给出一组下标便可求得相应数组元素的存储位置。以行序为例,设每个数据元素占L个存储单元,则n维数组任意元素的存储位置为:
        
        其中,
        Cn=L,Ci-1=bi×ci, 1<in
        在C语言中,二维数组是按行优先存储的,数组float a[4][5];的存储顺序为a[0][0], a[0][1], …, a[0][4], …, a[3][0], …, a[3][4], a[2][3]的地址为S+(2×5+3)×4=42,其中S为起始地址。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有