设二维数组a[m][n],每个数组元素占用k个存储单元,第一个数组元素的存储地址是LOC(a[0][0]),求按行优先顺序存放的数组元素a[i][j](0≤i≤m-1,0≤j≤n-1)的存储地址为( )。
A. LOC(a[0][0])+[(i-1)×n+j-1]×k
B. LOC(a[0][0])+[i×n+j]×k
C. LOC(a[0][0])+[j×m+i]×k
D. LOC(a[0][0])+[(j-1)×m+i-1]×k
B
由于...
用户登录可进行刷题及查看答案
由于下标从0开始,先计算偏移量,i*n+j,再乘以字节既是(i*n+j)*k,最后加上第一个数组元素的地址,所以是(i*n+j)*k+Loc(a[0][0]),选B。
这里要注意的是下标是从0开始的还是从1开始的,从1开始时,i,j都需要-1,从0开始时,不用减。
登录后提交答案
暂无评论,来抢沙发