设有二维数组A[9][19],其每个元素占两个字节,第一个元素的存储地址为100,若按行优先顺序存储,则元素A[6,6]

题目
填空题
设有二维数组A[9][19],其每个元素占两个字节,第一个元素的存储地址为100,若按行优先顺序存储,则元素A[6,6]的存储地址为(),按列优顺序存储,元素A[6,6]的存储地址为()。
参考答案和解析
正确答案: 100+(19*6+6)*2=340,100+(9*6+……)*2=220
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设有二维数据A[1…12,1…10],其每个元素占4个字节,数据按行优先顺序存储,第一个元素的存储地址为100,那么元素A[5,5]的存储地址为( )。

A.76

B.176

C.276

D.376


正确答案:C
解析:A[5,5]的存储地址为10(0(4×10+4)×4=276

第2题:

设有二维数组A[1..12,1..10],其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址100,那么元素A[5,5]的存储地址为( )。

A)176

B)276

C)208

D)308


正确答案:D
给出任意一数组元素的下标,可以直接计算数组元素的存放地址。二维数组元素地址的计算公式为:
行优先顺序下:LOC(aij)=LOC(a11)+((i-1)×n+(i-1))×λ
列优先顺序下:LOC(aij)=LOC(a11)+((j-1)×m+(i-1))×λ
式中,n和m分别为数组每行和每列的元素个数,λ为每个数组元素占用的存储单元个数。
依据题意,n=10,m=12,λ=4,LOC(aij)=LOC(a11)+((j-1)×m+(i-1))×λ100+((5-1)×12+(5-1))×4 =308,即A[5,5]的存储地址为308。

第3题:

(12)设有二维数组A[1..12,1..10],其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址100,那么元素A[5,5]的存储地址为( )。

A)176

B)276

C)208

D)308


正确答案:D


(12)【答案】D)
【解析】无论规定行优先或列优先,只要知道以下三要素便可随时求出任一元素的地址:开始结点的存放地址(即基地址),维数和每维的上下界,每个数组元素占用的单元数。假设一般的二维数组A[c1,d1,c2,d2]则行优先存储时的地址公式为LOC(aij)=LOC(acl,c2)+[(i-c1)*(d2-c2+1)+j-c2)]*L;二维数组列优先存储的通式为LOC(aij)= LOC(acl,c2)+[(i-c2)*(d1-c1+1)+i-c1)]*L,根据列优先公式得:LOC(A5.5)=100+[(5-1)*12+(5-1)]*4=308.

 

第4题:

设有二维数组A(12,10),其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址为 100。则元素A(5,5)的存储地址为

A.176

B.276

C.208

D.308


正确答案:D
解析:如果按列优先顺序列出矩阵中的元素,得到如下序列A11,A21, A31…An1,A12:…Amn,把它顺序存储在内存中,元素Aij(1≤j≤i≤n)的地址的公式为LOC (Aij)=LOC(A11)+[(j-1)*m+(i-1)]*λ(此处假设每个元素占λ个存储单元)。对应本题的具体情况,元素A(5,5)的存储地址为100+[(5-1)*2+(5-1)]*4=308。

第5题:

二维数组A[0…8][0…9],其每个元素占2字节,从首地址400开始,按行优先顺序存放,则元素A[8,5]的存储地址为

A.570

B.506

C.410

D.482


正确答案:A
解析:由于该数组按行优先顺序存储,所以每行共占10×2=20个字节。由此可知:A[8,5](第9行第6个元素)的地址是400+20×8+2×5=570。计算公式:对于按行优先顺序存储的二维数组A[m][n],若其首地址是S,每个元素占k个字节,则数组元素A[i][j]的地址P是p=S+(i*n+j)*k;在本题中,A[8,5]用C描述就是A[8][5],我们使用公式:P=400+(8*10+5)*2=570。

第6题:

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

第7题:

设有二维数组A[0…9][0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为__________。


正确答案:
232
二维数组A[0…m][0…n]数据按行优先顺序存储时,下界为0时元素aij的地址计算公式为:LOC(aij)=LOC(a00)+D×(m+1)+i]×d。所以本题中元素的存储地址为100+[6×10+6]×2=232。

第8题:

二维数组A[0…8,0…9],其每个元素占2字节,从首地址400开始,按行优先顺序存放,则元素A[8,5]的存储地址为

A.570

B.506

C.410

D.482


正确答案:A
解析:存储地址=首地址+相对偏移地址。

第9题:

二维数组A[0,…,8][0,…,9],其每个元素占2字节。从首地址400开始,按行优先顺序存储,则元素A[8][5]的存储地址为( )。

A.570

B.506

C.410

D.482


正确答案:A
A。【解析】A[8][5]元素存储的位置在第9行第6列,所以A[8][5]之前存储的个数应为8×10+5=85,这些元素占用的空间为85×2字节=170字节,所以A[8][5]的存储位置为400+170=570。

第10题:

设有二维数组A[1..8, 1..10],其每个元素占4个字节,数组按列优先顺序存储,第一个元素的存储地址为200,那么元素A[3, 4]的存储地址为( )。

A) 292

B) 304

C) 328

D) 396

A.

B.

C.

D.


正确答案:B

更多相关问题