『数据结构』 二维数组
1.设二维数组A[0…m-1][0…n-1]按行优先顺序存储在内存中,第一个元素的地址为p,每个元素占k个字节,则元素aij的地址为( ).
A.p +[i*n+j-1]*k B.p+[(i-1)*n+j-1]*k
C.p+[(j-1)*n+i-1]*k D.p+[j*n+i-1]*k
为什么 跟据C语言中,应有这个公式LOC(Aij)=Loc(A00)+(in+j)L n为列数 L为每个元素占据地址单元
可这里为什么选A呢 j要减一个1
另外又有一题
2.已知二维数组A10×10中,元素a20的地址为560,每个元素占4个字节,则元素a10的地址为( ).
A.520 B.522 C.524 D.518
这又是按照那个公式算的啊?按照那个公式算任然得不到A的答案啊!
人气:188 ℃ 时间:2020-01-02 18:50:52
解答
不要死套公式,这种二维数组在内存中的存放实际上就是按照一维数组进行的.计算机在寻址的时候,对于m*n的二维数组A的元素A[i][j],如果是行优先存储,会翻译成A[i*n+j]去寻找,也就是你提到的公式,如果是列优先,比如matla...
推荐
猜你喜欢
- 已知m²+n²=1,0<m,n
- 在全国600个城市中,有百分之六十的城市供水不足,在这些供水不足的城市中,又大约有四分之一的城市严重缺
- 关于advise.persuade的选择题
- 将所给字母重新排列,使其成为正确的单词,并写出中文意思.
- 把甲醇钠和甲醇的混合液中分离出甲醇,需要多少温度蒸馏?甲醇和氢氧化钠制甲醇钠怎么除水?
- 某校师生参加挖渠劳动,原来安排80人挖土,五十人运土,后来情况发生变化,要求挖土人数是运土人数的4倍,
- One of the things she wrote about was life on a small farm at the beginning of the century是用was ,而不是were?在定语从句中,关系代词that
- 某校进行乒乓球单打比赛,参赛选手共56人,如果采用淘汰赛,最后产生冠军.那么一共要进行多少场比赛?