假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储..

假设有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
如果使用例子的公式 答案就是错的
qtlbq126 1年前 已收到1个回答 举报

992111541 幼苗

共回答了17个问题采纳率:100% 举报

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

1年前

5
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.026 s. - webmaster@yulucn.com