niusouti.com
更多“对于二维数组a[1..6,1..8],设每个元素占2个存储单元,且以列为主序存储,则元素a[4,4]相对于数组空间起始地址的偏移量是()个存储单元。A、28B、42C、48D、54”相关问题
  • 第1题:

    对于二维数组a[0..4,1..5],设每个元素占1个存储单元,且以列为主序存储,则元素a[2,2]相对于数组空间起始地址的偏移量是(55)。

    A.5

    B.7

    C.10

    D.15


    正确答案:B
    解析:本题考查数组元素的存储。
      若二维数组A[L1..U1,L2..U2]以行为主序存储,每个元素占用d个存储单元,则元素A[I,J]的存储位置相对于数组空间首地址的偏移量为
      ((I-L1)×(U2-L2+1)+J-L2)×d
      若二维数组A[L1..U1,L2..U2]以列为主序存储,每个元素占用d个存储单元,则元素A[I,J]的存储位置相对于数组空间首地址的偏移量为
      ((J-L2)×(U1-L1+1)+I-L1)×d
      本题中d=1,L1=0,U1=4,L2=1,U2=5,代入后计算可得偏移量为7。

  • 第2题:

    设数组a[1..3,1..4]中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素a[2,3]相对于数组空间首地址的偏移量为(42)。

    A.6

    B.7

    C.8

    D.9


    正确答案:B
    解析:二维数组中的元素可以用两种方式存储:以行为主序(按行存储)或以列为主序(按列存储)。刘于一个m行n列的二维数组,当数组元素以行为主序存储时,首先存储第一行的所有元素,第二行的元素存储在第一行的元素之后,第三行的所有元素存储在第二行的元素之后,依次类推,第m行的元素最后存储。每行的元素按列下标次序从低到高依次存储。同理,以列为主序存储时,先存储第一列的元素,然后是第二列的元素,依次类推,最后是第n列的元素。
      对于二维数组a[L1..H1,L2..H2],无论采用哪一种存储方式,都可以采用以下通式计算数组中元素a[i,j]在存储空间中的位置为
                   loc(a[i,j])=loc(a[L1,L2))+k*d
      其中,k表示数组中存储在a[i,j]之前的元素数目:d表示每个数组元素占用的存储单元个数。当数组的元素以列为主序存放时,存储在a[i,j]之前的元素数目k为
                   k=(j-L2)*(H1-L1+1)+(i-L1)
      因此对于题目中定义的数组a[1..3,1..4],以行为主序存放时,a[i,j]((1≤i≤3,1≤j≤4)的地址计算公式为
              loc(a[i,j])=loc(a[1,1])+((j-1)*3+(i-1))*1=a-4+i+3j
      因此,loc(a[2,3])=a-4+2+3×3=a+7。

  • 第3题:

    设数组a[1..3,1..4]中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素a[2,3]相对于数组空间首地址的偏移量为_____。

    A.6

    B.7

    C.8

    D.9

    A.

    B.

    C.

    D.


    正确答案:B
    解析:二维数组可以按照两种方式存储:以行为主序或以列为主序。以行为主序存储时,先存储第一行的元素,之后存储第二行的元素,之后第三行,以此类推。以列为主序时情况相似,先存储第一列的元素,再第二列,再第三列……。题目中数组以列为主序存储,a[2,3]在第二行,第一行有4个元素,第二行a[2,3]前有a[2,1],a[2,2],所以a[2,3]相对于首地址偏移了7。

  • 第4题:

    对于二维数组a[1..6,1..8],设每个元素占2个存储单元,且以列为主序存储,则元素a[4,4]相对于数组空问起始地址的偏移量是______个存储单元。

    A.28

    B.42

    C.48

    D.54


    正确答案:B
    解析:本题考查数据结构基础知识。 
      在这里需要注意元素是按行存还是按列存存储的。
      按列存储时,a[4,4]之前的元素个数为21(3×6+3),每个元素占2个存储单元,因此a[4,4]相对于数组空间起始地址的偏移量是42。
      按行存储时,a[4,4]之前的元素个数为27(3×8+3),该元素相对于数组空间起始地址的偏移量是54。

  • 第5题:

    设数组a[1..3,1..4]中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素 a[2,3]相对于数组空间首地址的偏移量为______。

    A.6

    B.7

    C.8

    D.9


    正确答案:B
    解析:当数组元素以列为主序存储时,首先存储第1列的所有元素,然后存储第2列的所有元素,再存储第3列的所有元素,以此类推,最后存储最后一列的所有元素。数组元素a[2,3]表示是在第3行的第2个元素。所以,根据以列为主序存储元素的方式,它的位置前有2列元素,再加上两个元素,所以,它的位置为2*3+2=8,相对第一个元素的偏移量为8-1=7。本题正确答案为选项B。

  • 第6题:

    对于二维数组a[1..6,1..8],设每个元素占两个存储单元,且以列为主序存储,则元素a[4,4]相对于数组空间起始地址的偏移量是()个存储单元。

    • A、28
    • B、42
    • C、48
    • D、54

    正确答案:B

  • 第7题:

    设二维数组intM[4][4],每个元素(整数)占2个存储单元,元素按行优先的顺序存储,数组的起始地址为200,元素M[1][1]的地址是()


    正确答案:210

  • 第8题:

    设数组a[50][80]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素a[45][68]的存储地址为();若以列序为主序存储,则元素a[45][68]的存储地址为()


    正确答案:9174;8788

  • 第9题:

    二维数组A[10][20]采用列序为主方式存储,每个元素占一个存储单元,并且A[0][0]的存储地址是200,则A[6][12]的地址是()。


    正确答案:200+(6x20+12)x1

  • 第10题:

    填空题
    二维数组A[10][20]采用列序为主方式存储,每个元素占一个存储单元,并且A[0][0]的存储地址是200,则A[6][12]的地址是()。

    正确答案: 200+(6x20+12)x1
    解析: 暂无解析

  • 第11题:

    填空题
    设二维数组a[8][10]的基地址为2000,每个元素占3个存储单元,若以行序为主序顺序存储,则元素a[6][5]的存储地址为()

    正确答案: 2195
    解析: 暂无解析

  • 第12题:

    填空题
    设二维数组intM[4][4],每个元素(整数)占2个存储单元,元素按行优先的顺序存储,数组的起始地址为100,元素M[2][3]的地址是()

    正确答案: 122
    解析: 暂无解析

  • 第13题:

    设有一个二维数组A[1…6,1…4],若数组的起始地址为200,并且数据元素以行序为主序存放在数组中,每个元素占用4个存储单元,那么元素A[3,4]的存储地址为【】。


    正确答案:260
    A[]是一个二维数组,A[3,4]代表第三行第4个数,前面有二行,第三行有三个元素,所以元素个数为2*6+3=15,15*4=60,所以存储地址为260。

  • 第14题:

    对于二维数组a[1..4,3..6],设每个元素占两个存储单元,若分别以行和列为主序存储,则元素a[3,4]相对于数组空间起始地址的偏移量分别是(1)和(2)。

    A.12

    B.14

    C.16

    D.18


    正确答案:D

  • 第15题:

    对于二维数组a1..6,1..8,设每个元素占2个存储单元,且以列为主序存储,则元素a4,4相对于数组空间起始地址的偏移量是______个存储单元。

    A.28

    B.42

    C.48

    D.54

    A.

    B.

    C.

    D.


    正确答案:B

  • 第16题:

    假设以行序为主序存储二维数组array[100][100],设每个数据元素占2个存储单元,基地址为10,下标从0开始,则元素array[5][5]的地址为()。

    A.808

    B.818

    C.1010

    D.1020


    正确答案:C

  • 第17题:

    对于二维数组a[0.. 4,1.. 5],设每个元素占1个存储单元,且以列为主序存储,则元素a[2,2]相对于数组空间起始地址的偏移量是______。

    A.5

    B.7

    C.10

    D.15


    正确答案:B
    解析:此类题型以前考过多次,为了让大家能更好地理解题目的意思以及解题的思想,图3-81给出了二维数组a[0..4,1..5]的结构。因为以列为主序存储,所以a[0,1]存储在1号存储单元,a[1,1]存储在2号存储单元……以此类推,a[2,2]存储在8号存储单元,所以相对于数组空间起始地址的偏移量为8-1,即7。偏移量就是差值。所以答案为:B。此外,若数组以行为主序存储,则数组的结构如图3-82所示。

  • 第18题:

    设二维数组intM[4][4],每个元素(整数)占2个存储单元,元素按列优先的顺序存储,数组的起始地址为100,元素M[2][1]的地址是()


    正确答案:116

  • 第19题:

    已知二维数组A[m][n]采用行序为主方式存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0]),则A[i][j]的地址是()。


    正确答案:Loc(A[0][0])+(i*N+j)*k

  • 第20题:

    设二维数组A[m][n]按列优先存储,每个元素占1个存储单元,元素A00的存储地址loc(A00),则Aij的存储地址loc(Aij)=()。


    正确答案:loc(a00)+(j*m+i)*1

  • 第21题:

    设二维数组a[8][10]的基地址为2000,每个元素占3个存储单元,若以行序为主序顺序存储,则元素a[6][5]的存储地址为()


    正确答案:2195

  • 第22题:

    单选题
    设二维数组a[0‥5,0‥6]按行存储,每个元素占d个存储单元,如果每个元素改为2d个存储单元,起始地址不变,则元素a[2,6]的存储地址将要增加()个存储单元。
    A

    20d

    B

    21d

    C

    38d

    D

    39d


    正确答案: A
    解析: 暂无解析

  • 第23题:

    填空题
    设二维数组intM[4][4],每个元素(整数)占2个存储单元,元素按列优先的顺序存储,数组的起始地址为1000,元素M[1][2]的地址是()

    正确答案: 1018
    解析: 暂无解析

  • 第24题:

    填空题
    设数组a[50][80]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素a[45][68]的存储地址为();若以列序为主序存储,则元素a[45][68]的存储地址为()

    正确答案: 9174,8788
    解析: 暂无解析