首页 > 软考
题目内容 (请给出正确答案)
[主观题]

设下三角矩阵A: 如果以行序为主序将A的非零元素存储在一维数组B[n(n+1)/2]中,那么A的第i行第j列

设下三角矩阵A:

设下三角矩阵A: 如果以行序为主序将A的非零元素存储在一维数组B[n(n+1)/2]中,那么A的第i

如果以行序为主序将A的非零元素存储在一维数组B[n(n+1)/2]中,那么A的第i行第j列的非零元素aij(i≥j)在数组B中的下标为______。

设下三角矩阵A: 如果以行序为主序将A的非零元素存储在一维数组B[n(n+1)/2]中,那么A的第i

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“设下三角矩阵A: 如果以行序为主序将A的非零元素存储在一维数…”相关的问题
第1题
10阶对称矩阵以行为主序存储,a[1][1]为首个元素,其地址为1,每个元素占1个字节,则a[8][5]的地址是()。

A.40

B.13

C.33

D.18

点击查看答案
第2题
设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a1,1为第一个元素,其存储地址为1,每
个元素占1个地址空间,则a8,5的地址为()。

A.13

B.33

C.18

D.40

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

●设下三角矩阵(上三角部分的元素值都为 0)A[0..n,0..n]如下所示,将该三角矩阵的所有非零

点击查看答案
第4题
设矩阵A(aij,1<=i,j<=10)的元素满足: aij<>0(i>:=j,1<=i,j<=10),aij=0(i<j,1<=i,j<=10)若将A

设矩阵A(aij,1<=i,j<=10)的元素满足: aij<>0(i>:=j,1<=i,j<=10),aij=0(i<j,1<=i,j<=10)若将A的所有非0元素以行为主序存于首地址为2000的存储区域中,每个元素占4个单元,则元素A[59)的首地址为(48)

A.2340

B.2236

C.2220

D.2160

点击查看答案
第5题
数组A[-1..5,2..8,1..8]以行为主序存储,设第一个元素的首地址为54,每一个元素的长度为5,元素A[0,
6,5]的存储地址为(15)。

A.319

B.460

C.514

D.625

点击查看答案
第6题
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。【程序说明】 对角线下元素全为0

阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。

【程序说明】

对角线下元素全为0的矩阵称为上三角矩阵,设对于一个n×n的上三角矩阵a,为节约存贮,只将它的上三角元素按行主序连续存放在数组b中。下面的函数trans在不引入工作数组的情况下,实现将a改为按列主序连续存放在数组b中。

设n=5,

阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。【程序说明】 对角线下元素全为0

b=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)

经调用trans函数后,b变为

b=(1,2,6,3,7,10,4,8,11,13,5,9,12,14,15)

函数tans对数组元素的存贮位置作调整。调整过程中存在若干个循环传送链:

b(i1)→b(i2)→b(ij)→b(i1)1≤j<n

例如,考察调整后的数组元素b(2)(值为6),与该元素相关的位置调整将形成下面的循环传送链:

b(2)→b(3)→b(6)→……→b(12)→b(9)→b(5)→b(2)

关键是确定循环传送链的下标i1,i2,…,ij,以及在考察调整后的元素b(k)(k;3,4,…)时能判定b(k)是已被传送过的某传送链上的元素。

函数ctr(k,n)计算调整后的数组b的第k个元素b(k)在原数组b中的位置,该位置作为函数ctr(k,n)的返回值。函数ctr根据k确定它在矩阵中的行号i和列号j(注意行号和列号均从 0算起),然后按矩阵存放原则计算出它在b中的位置。

【程序】

trans(b,n)

int n,b[]

{

int m,k,r,cc,rr;

int w;

m=(n+1)*n/2-4;

k=2;

while(m>0)

{

r=ctr(k,n);

if(r==k)

m--;

else

{

cc=k;rr=r;

while (1)

{

cc=rr,rr=ctr(cc,n);

}

if (2)

{

cc=k;rr=r;w=b[k];

while (3)

{

b[cc]=b[rr];m--;

cc=rr,rr=ctf(cc,n);

}

b[cc]-w; (4);

}

}

k++;

}

}

ctr(k,n )

int k,n

{

int i,j;

i=k;j=0;

while (5)

i - =++j ;

return(i*n+j-i*(i+1)/2);

}

点击查看答案
第7题
设有一个二维数组A[1…4,1…6],若数组的起始地址为200,并且数据元素以行序为主序存放在数
组中,每个元素占用4个存储单元,那么元素A[3,4]的存储地址为____

点击查看答案
第8题
已知二维数组A[m][n]采用行序为主方式存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0])

已知二维数组A[m][n]采用行序为主方式存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0]),则A[i][j]的地址是______。

点击查看答案
第9题
已知二维数组A[1:4,1:6)采用行序为主序方式存储,每个元素占用3个存储单元,并且A[1,1]的存储地址
为1200,,元素A[2,4]的存储地址是(46)。

A.1221

B.1227

C.1239

D.1257

点击查看答案
第10题
设数组a[5..20,3..16]的元素以行为主序存放,每个元素占用两个存储单元,则数组元素a[i,j](5≤i≤20,

设数组a[5..20,3..16]的元素以行为主序存放,每个元素占用两个存储单元,则数组元素a[i,j](5≤i≤20,3≤j≤16)的地址计算公式为(108)。

A.a-146+28i+2j

B.a-116+28i+2j

C.a-144+28i+2i

D.a-118+28i+2j

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改