34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA

学习 时间:2026-04-07 22:38:32 阅读:8910
34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )A.SA+141 B.SA+180 C.SA+222 D.SA+225 为什么要选A呢?请求完整,精确,易懂,仔细的回答!

最佳回答

明亮的信封

英勇的糖豆

2026-04-07 22:38:32

公式是这样的:SA+((i-1)*10+(j-1))*3。这样看好了:A[5,8]总共5行,其中第5行只有8个元素,前4行都是10个元素,这样不难理解(i-1)*10了,为什么要j要-1呢,因为第一个元素的地址是SA,第二个的是SA+1*3。依次类推,公式SA+((i-1)*10+(j-1))*3就是表示在第一个元素的基础上加上偏移量也就是第i*19+j个元素的地址了。原来把一个问题说得简单明了不是件容易的事,汗。

最新回答共有2条回答

  • 怡然的老师
    回复
    2026-04-07 22:38:32

    公式是这样的:SA+((i-1)*10+(j-1))*3。这样看好了:A[5,8]总共5行,其中第5行只有8个元素,前4行都是10个元素,这样不难理解(i-1)*10了,为什么要j要-1呢,因为第一个元素的地址是SA,第二个的是SA+1*3。依次类推,公式SA+((i-1)*10+(j-1))*3就是表示在第一个元素的基础上加上偏移量也就是第i*19+j个元素的地址了。原来把一个问题说得简单明了不是件容易的事,汗。

上一篇 But you're just a boy.Someday you'll wish you were a better

下一篇 2011年上半年国内外十大新闻