参考答案和解析
正确答案:A
更多“若数组A[0…m][0…n]按列优先顺序存储,则a<sub>ij”相关问题
  • 第1题:

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

    A)470

    B)406

    C)454

    D)382


    正确答案:C
    由于该数组按列优先顺序存储,可知: A[8,5](第9行第6个元素)的地址是300+18×8+2×5=454。
    汁算公式如下:对于按列优先顺序存储的二维数组A[m][n],若其首地址是S,每个元素占k个字节,则数组元素A[i][j]的地址P是P=S+(i﹡m+j)+k;本题中,P=300+(8﹡9+5) ﹡2=454。

  • 第2题:

    ● 下三角矩阵A[0..8,0..8]如下所示,若将其下三角元素(即行下标不小于列下标的所有元素)按列 列列 列压缩存储在数组M[0..m]中,即A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[2,0]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在 (37) 。若将其下三角元素按行 行行 行压缩存储在数组 M[0..m]中,即 A[0,0]存储在 M[0]、A[1,0]存储在 M[1]、A[1,1]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在 (38) 。


    正确答案:C,B

  • 第3题:

    ●设下三角矩阵(上三角部分的元素值都为 0)A[0..n,0..n]如下所示,将该三角矩阵的所有非零元素(即行下标不小于列下标的元素)按行优先压缩存储在容量足够大的数组M[ ]中(下标从1 开始),则元素 A[I,j](O≤i≤n,j≤i)存储在数组M 的 (57) 中。


    正确答案:A
    试题(57)分析本题考查数组存储的基础知识。按行方式存储时,元素A[i,j]之前的元素个数为(1+2+…+i+j),由于数组M的下标从1开始,因此,存储A[i,j]的是M[1+2+…+i+j+1],即M[i(i+1)/2+j+1]。参考答案(57)A

  • 第4题:

    设数组a[0..n-1,0..m-1](n>1,m>1)中的元素以行为主序存放,每个元素占用1个存储单元,则数组元素a嘶](0<i<n,0<j<m)的存储位置相对于数组空间首地址的偏移量为( )。

    A.j*m+i
    B.i*m+j
    C.j*n+i
    D.i*n+j

    答案:B
    解析:
    本题考查程序语言基础知识。
    对于元素a[i,j],按行存储方式下,其前面共有i行(行下标为0至行下标为i-1)、每行m个元素,合计i*m个元素。数组a中行下标为i的元素有a[i,0]、a[i,1]、…、a[i,j-1]、a[i,j]、…、a[i,m-1],显然在该序列中,a[i,j]之前有j个元素,因此,数组元素a[i,j](0<i<n,0<j<m)之前共有i*m+j个元素,由于每个占用1个存储单元,故该元素的存储位置相对于数组空间首地址的偏移量为i*m+i。

  • 第5题:

    设数组a[0..n-1,0..m-1](n>0,m>0)中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](0≤i≤n-1,0≤j≤m-1)相对于数组空间首地址的偏移量为( )。

    A.i*m+j
    B.(i-1)*n+j-1
    C.j*n+i
    D.(j-1)*n+i-1

    答案:C
    解析:
    数组a[0..n-1,0..m-1](n>0,m>0)表示有n行m列,数组元素的存储地址=数组空间首地址+偏移量。其中偏移量的计算方式为排列在所访问元素之前的元素个数乘以每个元素占用的存储单元数。对于元素a[i,j],在按列存储(以列为主序存放)方式下,该元素之前有j列完整(因为首列编号为0)的元素,每一列n个元素,在第j列之前有i个元素(因为首行编号为0),所以偏移量为j*n+i。

  • 第6题:

    设一行优先顺序存储的数组A[5][6],A[0][0]的地址为1100,且每个元素占2个存储单元,则A[2][3]的地址为()。


    正确答案:1100+(6*2+3)*2=1130

  • 第7题:

    设二维数组A[m][n]按列优先存储,每个元素占1个存储单元,元素A00的存储地址loc(A00),则Aij的存储地址loc(Aij)=()。


    正确答案:loc(a00)+(j*m+i)*1

  • 第8题:

    填空题
    设二维数组A[m][n]按列优先存储,每个元素占1个存储单元,元素A00的存储地址loc(A00),则Aij的存储地址loc(Aij)=()。

    正确答案: loc(a00)+(j*m+i)*1
    解析: 暂无解析

  • 第9题:

    单选题
    设二维数组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
    解析: 暂无解析

  • 第10题:

    判断题
    假定二维数组的定义为“double a[M][N];”,则每个数组元素的列下标取值范围在0~N之间。()
    A

    B


    正确答案:
    解析: 暂无解析

  • 第11题:

    填空题
    设有二维数组A[0‥9,0‥19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为()。

    正确答案: 232
    解析: 暂无解析

  • 第12题:

    填空题
    设一行优先顺序存储的数组A[5][6],A[0][0]的地址为1100,且每个元素占2个存储单元,则A[2][3]的地址为()。

    正确答案: 1100+(6*2+3)*2=1130
    解析: 暂无解析

  • 第13题:

    二维数组A[0,…,8][0,…,9],其每个元素占2字节。从首地址400开始,按行优先顺序存储,则元素A[8][5]的存储地址为( )。

    A.570

    B.506

    C.410

    D.482


    正确答案:A
    A。【解析】A[8][5]元素存储的位置在第9行第6列,所以A[8][5]之前存储的个数应为8×10+5=85,这些元素占用的空间为85×2字节=170字节,所以A[8][5]的存储位置为400+170=570。

  • 第14题:

    设有如下所示的下三角矩阵A[0..8,0..8],将该三角矩阵的非零元素(即行下标不小于列下标的所有元素)按行优先压缩存储在数组M[1..m]中,则元素A[i,j](0≤i≤8,j≤i)存储在数组M的(58)中。

    A.

    B.

    C.

    D.


    正确答案:A
    解析:本题中注意M数组从1开始,A[i,j]前有i行,元素个数分别为1,2,3……i共i*(i+1)/2个,加上A[i,0],A[i,1],……A[i,j]共j+1个,总计i*(i+1)/2+j+l。对应关系:M[1]-A[0,0],M[2]-A[1,0],……M[i*(i+1)/2+j+1]-A[i,j]。

  • 第15题:

    设数组a[0..n-l,O..m-l] (n>l,m>l)中的元素以行为主序存放,每个元素占用1个 存储单元,则数组元素a[ij](0<i<n,0<j<m)的存储位置相对于数组空间首地址的偏移量为(35)。

    A.j*m+i

    B.i*m+j

    C.j*n+i

    D.i*n+i


    正确答案:B
    本题考查程序语言基础知识。对于元素a[ij]按行存储方式下,其前面共有i行(行下标为0至行下标为i-l)、每行m个元素,合计i*m个元素。数组a中行下标为i的元素有a[i,0],a[i,l]....a[i,j-1],a[i,j]....a[i,m-1],显然在该序列中,a[ij]之前有j个元素,因此,数组元素a[i.i](0in,0jm)之前共有i*m+j个元素,由于每个占用1个存储单元,故该元素的存储位置相对于数组空间首地址的偏移量为i*m+j。

  • 第16题:

    设二维数组A[6][0],每个数组元素占用4个存储单元,若按行优先顺序存放的数组元素,a[0][0]的存储地址为860,则a[3][5]的存储地址为()。

    A.1000
    B.860
    C.1140
    D.1200

    答案:A
    解析:
    每个数组元素占用4个存储单元,按行优先顺序存放的数组元素,则a[3][5]的存储地址为860+(3×10+5)×4=1000。

  • 第17题:

    假定二维数组的定义为“double a[M][N];”,则每个数组元素的列下标取值范围在0~N之间。()

    A

    B



  • 第18题:

    对于上三角形和下三角形矩阵,分别以按行存储和按列存储原则进行压缩存储到数组M[k]中,若矩阵中非0元素为Aij,则k对应为()和()。


    正确答案:i*(i-1)/2+j-1(i≥j);j*(j-1)/2+i-1(i

  • 第19题:

    单选题
    下三角矩阵A[0..8,0..8]如下图所示,若将其下三角元素(即行下标不小于列下标的所有元素)按列压缩存储在数组M[0..m]中,即A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[2,0]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在__(1)__。若将其下三角元素按行压缩存储在数组M[0..m]中,即A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[1,1]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在__(2)__。 空白(2)处应选择()
    A

    M[15]

    B

    M[20]

    C

    M[35]

    D

    M[39]


    正确答案: D
    解析: 若按行压缩:上(下)三角矩阵是指矩阵的下(上)三角元素取值相同,设此取值为常数C(一般为0),则三角矩阵只需存储常数C和上(下)三角中的数据元素即可。故其压缩存储方式与对称矩阵相同,只不过多出一个常数的存储空间。对于任意给定一组下标(i,j),均可在sa中找到矩阵元a,反之,对所有的k=0,1,2,…,n(n+1)/2-1,都能确定sa[k]中的元在矩阵中的位置(i,j)。n阶对称矩阵A的压缩存储如下所示:

  • 第20题:

    填空题
    二维数组A的每个元素是由6个字符组成的串,行下标的范围从0~8,列下标的范围是从0~9,若A按行优先方式存储,元素A[8][5]的起始地址与当A按列优先方式存储时的()元素的起始地址一致。

    正确答案: A[4][9]
    解析: 暂无解析

  • 第21题:

    单选题
    已知二维数组A[6][10],每个数组元素占4个存储单元,若按行优先顺序存放数组元素a[3][5]的存储地址是1000,则a[0][0]的存储地址是()。
    A

    872

    B

    860

    C

    868

    D

    864


    正确答案: C
    解析: 暂无解析

  • 第22题:

    单选题
    设二维数组a[0…m-1][0…n-1]按列优先顺序存储在首地址为LOC(a[0][0])的存储区域中,每个元素占d个单元,则a[i][j]的地址为()
    A

    LOC(a[0][0])+(j×n+i)×d

    B

    LOC(a[0][0])+(j×m+i)×d

    C

    LOC(a[0][0])+((j-1)×n+i-1)×d

    D

    LOC(a[0][0])+((j-1)×m+i-1)×d


    正确答案: C
    解析: 暂无解析

  • 第23题:

    填空题
    对于上三角形和下三角形矩阵,分别以按行存储和按列存储原则进行压缩存储到数组M[k]中,若矩阵中非0元素为Aij,则k对应为()和()。

    正确答案: i*(i-1)/2+j-1(i≥j),j*(j-1)/2+i-1(i
    解析: 暂无解析