● 若二维数组arr[1..M, 1..N]的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则元素arr[i, j]在该数组空间的地址为 __ 。 A.base+((i-1)*M+j-1)*K B.base+((i-1)*N+j-1)*K C. base+((j-1)*M+i-1)*K D. base+((j-1)*N+i-1)*K
举一反三
- 设数组a[1..m,1..n](m>1,n>1)中的元素按行存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤m,1≤j≤n)相对于数组首元素的偏移量为()。 A: (i-1)×m+j-1 B: (i-1)×n+j-1 C: (j-1)×m+i-1 D: (j-1)×n+i-1
- 设数组a[1..n,1..m] (n>1,m>1)中的元素以列为主序存放,每个元素占用1个存储单元,数组空间首地址为2020,则数组元素a[i,j](1≤i≤n,i≤j≤m)的地址为() A: 2020+(i-1)*m+j-1 B: 2020+(i-1)*n+j-1 C: 2020+(j-1)*m+i-1 D: 2020+(j-1)*n+i-1
- 设二维数组A[1„m,1„n]按行存储在数组B中,则二维数组元素A[i,j]在一维数组B中的下标为()。 A: n*(i-1)+j B: n*(i-1)+j-1 C: i*(j-1) D: j*m+i-1
- 二维数组A[n][m]以列优先顺序存储,数组A中每个元素占用1个字节,A[1][1]为首元素,其地址为0,则元素A[i][j]的地址为() A: (i-1)×m+(j-1) B: (j-1)×n+(i-1) C: (j-1)×n+i D: j×n+i
- 设二维数组A[1…m,1…n]按行存储在数组B中,则二维数组元素A[i,j]在一维数组B(下标从0开始)中的位置为() A: n*(i-1)+j B: n*(i-1)+j-1 C: i*(j-1) D: j*m+i-1