工学

填空题数组A[-2....5,2....8,1.....8]以行序存储,设第一个元素的首地址是54,每个元素的长度为5,则元素A[0,6,5]的存储首址为()。

题目
填空题
数组A[-2....5,2....8,1.....8]以行序存储,设第一个元素的首地址是54,每个元素的长度为5,则元素A[0,6,5]的存储首址为()。
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设有二维数组A[1,…,10][1,…: 12],其每个元素占2个字节,数据按行优先顺序存储,第一个元素的存储地址为1000,则元素A[5][5]的存储地址为________。


正确答案:
1104
二维数组数据按行优先顺序存储时,元素aD的地址计算公式为:LOC(aij)=LOC(a11)+[n×(i-1)+(i-1)]×d。所以本题中元素的存储地址为1000+[(5一1)×12+5-1]×2=1104。

第2题:

数组b[1..10,-2..6,2..8]以行优先的顺序存储,设第一个元素的首址是100,每个元素的长度为3。元素b[5,0,7]的存储首址为( )。

A、900

B、912

C、910

D、913


正确答案: D

第3题:

设C数组A[20][10]每个元素占2个存储单元,且第1个元素的首地址为2000,则元素A[8][9]的存储地址为()。


参考答案:2178

第4题:

设数组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。

第5题:

设数组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。

第6题:

设数组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。

第7题:

一个数组第一个元素的存储地址是100,每个数组元素的长度为2,则第5个元素的地址是()。

A110

B108

C100

D120


参考答案:B

第8题:

以行优先存储的一维数组A[1..10],每个元素占4字节,A[5]的地址是1020,则数组的首地址是()。


参考答案:1004

第9题:

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

A.808

B.818

C.1010

D.1020


正确答案:C

第10题:

数组A[-1..5,2..8,1..8]以行为主序存储,设第一个元素的首地址为54,每一个元素的长度为5,元素A[0,6,5]的存储地址为(15)。

A.319

B.460

C.514

D.625


正确答案:C

更多相关问题