数据结构题:二维数组A[10][20]采用列序为主方式存储,每个元素占一个存储单元并且A[0][0]的存储地址是200则A[6][12]的地址是326.还有这题:二维数组A[10..20][5..10]采用行序为主方式存储,每个元素占4个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的地址是1208.答案是不是错了?
问题描述:
数据结构题:二维数组A[10][20]采用列序为主方式存储,每个元素占一个存储单元并且A[0][0]的存储地址是200
则A[6][12]的地址是326.
还有这题:二维数组A[10..20][5..10]采用行序为主方式存储,每个元素占4个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的地址是1208.
答案是不是错了?
答
第一题:列序存储,则A[6][12]的地址的A[0][0]的地址加上"12*10+6"=200+126=326 (行序是6*20+12)
第二题:行序存储,A[18][9]=A[10][5]+(8*6+4)*4=1000+208=1208;
A[10...20][5...10]等同于A[11][6] 然后已知A[0][0]的地址为1000,求A[8][4]的地址,注意每个元素占4个存储单元了 需要乘上4
答案正确