将M行N列的二维数组按列为主序存放,首个元素a00存于地址B(占d个字节),则元素aij的地址是()。
A.B+(i*M+j)*d
B.B+(i*N+j)*d
C.B+(j*M+i)*d
D.B+(j*N+i)*d
A.B+(i*M+j)*d
B.B+(i*N+j)*d
C.B+(j*M+i)*d
D.B+(j*N+i)*d
A.B+(i*M+j)*d
B.B+(i*N+j)*d
C.B+(j*M+i)*d
D.B+(j*N+i)*d
A.A[7,8]
B.A[6,5]
C.A[0,7]
D.A[3,10]
二维数组M的成员是6个字符(每个字符占一个存储单元)组成的串,行下标i的范围从0到8,列下标i的范围从0到9,则存放M至少需要多少个字节?M的第8列和第5行共占多少个字节?若M按行优先方式存储,元素M[8][6]的起始地址与当M按列优先方式存储时哪个元素的起始地址一致?
二维数组M的成员是6个字符(每个字符占一个存储单元)组成的串,行下标i的范围从0到8,列下标j的范围从1到10,则存放M至少需要_________个字节;M的第8列和第5行共占______个字节;若M按行优先方式存储,元素M[8][5]的起始地址与当M按列优先方式存储时的_______元素的起始地址一致。
A.1175
B.1180
C.1205
D.1210
设二维数组A[m][n](即m行n列)按行存储在数组B[1..m×n]中,则二维数组元素A[i][j]在一维数组B中的下标为()。
A.(i—1)×n+j
B.(i一1)×n+j-1
C.i×(j一1)
D.j×m+i—l
下面程序将二维数a的行和列元素互换后存放另一个二维数组b中。请填空。 main() { int a [2][3]={{1,2,3},{4,5,6}}; int b[3][2], i,j; printf("array a"\n"); for(i=0;i<=1;i++) {for(j=0;【 】;j++) { printf("%5d",a[i][j]); 【 】;} printf("\n");} printf("array b:\n"); for(i=0;【 】;i++) { for(j=0;j<=1;j++) printf("%5d",b[i][j]); printf("\n");}}
已知二维数组A[m][n]采用行序为主方式存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0]),则A[i][j]的地址是______。