可学答题网 > 问答 > 程序语言基础知识题库,中级软件设计师题库
目录: 标题| 题干| 答案| 搜索| 相关
问题

若二维数组arr[1..M,1..N]的首地址为base,数组元素按列存储且


若二维数组arr[1..M,1..N]的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则元素arr[i,j]在该数组空间的地址为()。

  • Abase+((i-1)*M+j-1)*K
  • Bbase+((i-1)*N+j-1)*K
  • Cbase+((j-1)*M+i-1)*K
  • Dbase+((j-1)*N+i-1)*K
参考答案
参考解析:

数据arr共M行N列,下标均从1开始。元素arr[i,j]在数据arr的第i行第j列,如果数组元素按列存储,则1~j-1列共有(j-1)*M个元素,a[i,j]之前共(j-1)*M+i-1个元素,元素arr[i,j]在该数组空间的地址为base+((j-1)*M+i-1)*K。

分类:程序语言基础知识题库,中级软件设计师题库
相关推荐

1、用DIMENSIONARR(3,3)命令声明了一个二维数组后,再执行ARR=

用DIMENSIONARR(3,3)命令声明了一个二维数组后,再执行ARR=3命令,()A命令ARR=3创建了一个新的内存变量,它与数组无关B数组的第1个元素被赋值为3C所有的数值元素均被赋值为...

2、二维数组A[0…8,0….9],其每个元素占2个字节,从首地址300开始,按

二维数组A[0…8,0….9],其每个元素占2个字节,从首地址300开始,按列优先顺序存放,则元素A[8,5]的存储地址为( )。AA)470BB)406CC)454DD)382

3、● 设数组a[0..m,1..n]的每个元素占用1个存储单元,若元素按行存储

● 设数组a[0..m,1..n]的每个元素占用1个存储单元,若元素按行存储,则数组元素a[i,j](0≤i≤m,1≤j≤n)相对于数组空间首地址的偏移量为 (32) 。(32)A (i+1)*n+jB i*n+j-1C i*m+jD i*(m+1)+j-1

4、若MCS-51外扩8KB程序存储器的首地址若为1000H,则末地址为()H。

若MCS-51外扩8KB程序存储器的首地址若为1000H,则末地址为()H。

5、二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为

二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为1087,A[4][7]的存储地址为1153,则数组元素A[6][7]的存储地址为 ( )A1207B1209C1211D1213

6、设数组a[0..m,1..n]的每个元素占用1个存储单元,若元素按行存储,则

设数组a[0..m,1..n]的每个元素占用1个存储单元,若元素按行存储,则数组元素a[i,j](0≤i≤m,1≤j≤n)相对于数组空间首地址的偏移量为( )。A(i+1)*n+jBi*n+j-lCi*m+jDi*(m+1)+j-1