问题 单项选择题

设有二维数组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+(j-1))×λ
列优先顺序下:LOC(aij)=LOC(a11)+((j-1)×n+(j-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。

材料题
多项选择题