假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储...例:设数组a[1…60, 1…70]的基地址为2048,每个元素占2个存储单元,若以列序为主序顺序存储,则元素a[32,58]的存储地址为8950.LOC(aij)=LOC(ac1,c2)+[(j-c2)*(d1-c1+1)+i-c1)]*L得:LOC(a32,58)=2048+[(58-1)*(60-1+1)+32-1)]*2=8950假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为————为什么这道题不能使用例子的公式.该使用哪个公式.如何辨别什么情况使用什么公式.正确答案是 16902如果使用例子的公式 答案就是错的

问题描述:

假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储...
例:
设数组a[1…60, 1…70]的基地址为2048,每个元素占2个存储单元,若以列序为主序顺序存储,则元素a[32,58]的存储地址为8950.
LOC(aij)=LOC(ac1,c2)+[(j-c2)*(d1-c1+1)+i-c1)]*L
得:LOC(a32,58)=2048+[(58-1)*(60-1+1)+32-1)]*2=8950
假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为————
为什么这道题不能使用例子的公式.该使用哪个公式.
如何辨别什么情况使用什么公式.
正确答案是 16902
如果使用例子的公式 答案就是错的

可以使用啊,把2048变成10000就可以了,反正都是列序,数组维度也一样,都是60x70
应该没错吧:
8950-2048+10000 = 16902
LOC(a32,58)=10000+[(58-1)*(60-1+1)+32-1)]*2 = 16902