假设有二维数组 A[M,N]设 A[0,0]在内存中的存储地址为 644,A[2,2] 在内存中的存储地址为676。每个元素占一个存储空间,则 A[4,5]的地址为多少?以行序为主序存储。
时间: 2023-08-31 14:34:25 浏览: 179
### 回答1:
根据行序为主序存储,每行有 N 个元素,第 i 行的第 j 个元素的地址为 644 + i * N + j。因此,A[4,5]的地址为 644 + 4 * N + 5 = 644 + 4 * N + 5 = 664。
### 回答2:
题目已明确说明以行序为主序存储,即第一行按顺序存储完后,才存储第二行。
根据题目中的信息,我们可以得到一些推论:
1. A[0,0]的地址为644;
2. A[0,1]的地址比A[0,0]的地址大1(每个元素占一个存储空间);
3. A[1,0]的地址比A[0,0]的地址大N,其中N表示每行的元素个数;
4. A[2,2]的地址为676。
我们已经知道A[0,0]的地址为644,而A[2,2]的地址为676,它们之间的差是32(676-644),即A[0,0]到A[2,2]的地址差为32。
我们再来思考A[2,2]到A[4,5]的地址差:
1. A[2,2]到A[2,5]的地址差为4(每行的元素个数为N);
2. A[2,5]到A[3,0]的地址差也为N;
3. A[3,0]到A[4,0]的地址差为N;
4. A[4,0]到A[4,5]的地址差为5。
将上述的地址差进行求和:
32 + 4 + N + N + N + 5
综上所述,A[4,5]的地址为:
676 + 4 + N + N + N + 5 = 685 + 3N
因此,A[4,5]的地址为685 + 3N。
### 回答3:
题目给出了二维数组A[M, N]中A[0,0]的存储地址为644,A[2,2]的存储地址为676。我们可以得出每个元素的存储地址间隔为4。
对于以行序为主序存储的二维数组,每一行的元素是连续存储的,即每一行的第一个元素的地址加上偏移量即可得到其他元素的地址。偏移量可以通过列数N来计算。
我们可以得到第一行的第一个元素A[0,0]的地址为644,那么第一行的第5个元素A[0,4]的地址可以通过加上4*4得到,即644+16=660。同理,第二行的第一个元素A[1,0]的地址为660+4*4=676,而第四行的第一个元素A[3,0]的地址为676+4*4*2=708。
所以A[4,5]的地址可以通过第四行的第一个元素地址加上偏移量5*4得到,即708+5*4=728。
综上所述,A[4,5]的地址为728。
阅读全文
相关推荐


















