已知有一维数组A[0...m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系______可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。A.i=k/n,j=k%mB.i=k/m,j=k%mC.i=k/n,j=k%nD.i=k/m,j=k%n

题目

已知有一维数组A[0...m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系______可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。

A.i=k/n,j=k%m

B.i=k/m,j=k%m

C.i=k/n,j=k%n

D.i=k/m,j=k%n


相似考题
更多“已知有一维数组A[0...m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系______可将元素A[k](0≤k< ”相关问题
  • 第1题:

    已知有一维数组A[0,…,m×n-1],若要对应为m行、n列的矩阵,则下面的对应关系(73)可将元素A[k](0≤k<m×n)表示成矩阵的第i行、第j列的元素(0≤i<m, 0≤j<n)。

    A.i=k/n,j=k%m

    B.i=k/m,j=k%m

    C.i=k/n,j=k%n

    D.i=k/m,j=k%n


    正确答案:C
    解析:本题其实就是求一个一维数组A[m×n]向二维数组B[m][n]的转化问题,最原始的方法就是把A数组的前n个元素放到刀数组的第一行中,A数组的第n+1到2n个元素放到B数组的第二行中,依次类推,A数组的最后n个元素放到B数组的最后一行中。要求A[k])在B数组中的位置,首先确定A[k]处在哪一行,根据上面的存放方法,显然,应该是k/n行。然后再确定处在k/n行的哪一列,显然是k%n(“%”表示模运算)。

  • 第2题:

    已知有一维数组A[0.m×n-1],若要对应为m行n列的矩阵,则下面的对应关系(),可将元素A[k](O≤<k≤<m×n)表示成矩阵的第i行、第j列的元素(0≤i≤m,0匀≤n)。

    A. i=k/n,j=k%m
    B.i=k/m,j=k%m
    C.i=k/n,j=k%n
    D.i=k/m,j=k%n

    答案:C
    解析:
    矩阵每一行有n个元素,则第i+l行、第j+l到的元素~在A中是第n×i+j+l个元素,对应的下标k=nXi+j(因为下标从0开始)。反过来:i=k/n,j=k%n。

  • 第3题:

    设C/C++二维数组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


    C

  • 第4题:

    已知有一维数组T[0...m*n-1],其中m>n。从数组T的第一个元素(T[0])开始,每隔n个元素取出一个元素依次存入数组B[1...m]中,即B[1]=T[0],B[2)= T[n],依次类推,那么放入B[k](1≤k≤m)的元素是( )。

    A.T[(k-1)*n]
    B.T[k*n]
    C.T[(k-1)*m]
    D.T[k*m]

    答案:A
    解析:
    由题可知,B[1]=T[(1-1)*n],B[2]=T[(2-1)*n],B[3]=T[(3-1)*n],...,根据归纳法可得B[k]=T[(k-1)*n)。

  • 第5题:

    设有6阶对称矩阵A,其中矩阵元素用a(i,j)表示,i为行下标,i=0,1,...,n-1,j为列下标,j=0,1,...,n-1,将A按照行优先顺序存储下三角元素的方式存储至一维数组B,设每个矩阵元素占2个字节,已知数组B的首地址为100,则,a(1,3)的地址是___


    114