更多"对于一个二维数组A[1…m,1…n],若按列为主序存储,则任意一个元素"的相关试题:
[填空题]对于一个二维数组A[1...m,1...n),若按列为主序存储,则任一元素A[i,j]的相对地址是 【2】 。
[填空题]下列程序将二维数组a的行和列元素互换后存放到另一个二维数组b中。请填空。
main( )
int a[2][3]=1,2,3,4,5,b[3][2],i,j;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
______;
[填空题]下列程序将二维数组a的行和列元素互换后存放到另一个二维数组b中。请填空。
main( )
int a[2][3]=1,2,3),4,5,b[3][2],i,j;
for(i=0;i<2;i++)
for(j=0;j<30++)
______;
[单项选择]设有一个二维数组A[10][20]按行存放于一个连续的存储空间中,A[0][0]的存储地址是200,每个数组元素占1个存储字,则A[6][2]的存储字地址是 (37) 。
A. 284
B. 308
C. 322
D. 358
[填空题]假定一个二维数组的定义为"int a[3][5];”,则该数组所含元素的个数为15,所占的存储空间的字节数为 【8】 。
[填空题]下面程序将二维数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; 【17】 ;j++)
{ printf("%5d",a[i][j]);
【18】 ;}
printf("/n");}
printf("array b:/n");
for(i=0; 【19】 ;i++)
{ for(j=0;j<=1;j++)
printf("%5d",b[i][j]);
printf("/n");}}
[单项选择]对于二维数组a[0..4,1..5],设每个元素占1个存储单元,且以行为主序存储,则元素a[2,1]相对于数组空间起始地址的偏移量是 (40) 。
A. 5
B. 10
C. 15
D. 25
[单项选择]对于二维数组a[1..6,1..8],设每个元素占2个存储单元,且以列为主序存储,则元素a[4,4]相对于数组空间起始地址的偏移量是______个存储单元。
A. 28
B. 42
C. 48
D. 54
[填空题]设有一个二维数组A[1…4,1…6],若数组的起始地址为200,并且数据元素以行序为主序存放在数组中,每个元素占用4个存储单元,那么元素A[3,4]的存储地址为______。
[填空题]设有一个二维数组A[1…6,1…4],若数组的起始地址为200,并且数据元素以行序为主序存放在数组中,每个元素占用4个存储单元,那么元素A[3,4]的存储地址为______。
[单项选择]若二维数组arr[1..M,1..N]的首地址为base,数组元素按列存储且每个元素占用K个存储单元,则元素arr[i,j]在该数组空间的地址为()。
A. base+((i-1)*M+j-1)*K
B. base+((i-l)*N+j-1)*K
C. base+((j-1)*M+i-1)*K
D. base+(j-1)*N+i-1)*K
[填空题]严格地讲,二维数组不是一种线性表,但数组可以看成是线性表在下述含义上的扩展:二维数组的数据元素是______的线性表。
[单项选择]若二维数组P[1..5,0..8]的首地址为base,数组元素按行存储,且每个元素占用1个存储单元,则元素P[3,3]在该数组空间的地址为______。
A. base+13
B. base+16
C. base+18
D. base+21
[填空题]设有二维数组A[0…9,0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100。那么,元素A[6,6]的存储地址为______。
[填空题]设有二维数组A[0…9][0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为______。