第1题:
按行优先顺序存储下三角矩阵A。的非零元素,则计算非零元素aij(1≤j≤i≤n)的地址公式为Loc(aij)=_________1﹡(i-1)/2+(j-1)。
第2题:
A.i*(i-1)/2+j
B、j*(j-1)/2+i
C.i*(i+1)/2+j
D、j*(j+1)/2+i
第3题:
● 已知对称矩阵 An*n(Ai,j=Aj,i)的主对角线元素全部为0,若用一维数组B 仅存储矩阵 A 的下三角区域的所有元素(不包括主对角线元素),则数组 B的大小为(40)。
(40)
A.n(n-1)
B.n2/2
C.n(n-1)/2
D.n(n+1)/2
第4题:
设矩阵A是一个对称矩阵(aij=aji,1≤i,j≤8),若每个矩阵元素占3个单元,将其上三角部分(包括对角线)按行序为主序存放在数组B中,B的首地址为1000,则矩阵元素a67的地址为(36)。
A.1093
B.1096
C.1108
D.1132
第5题:
阅读下列函数说明和C函数,回答问题1~2,将解答填入栏内。
[说明]
若矩阵Am×n中存在某个元素aij满足:aij…是第i行中最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。下面程序的功能是输出A中所有鞍点,其中参数A使用二维数组表示,m和n分别是矩阵A的行列数。
[程序]
void saddle (int A[ ] [ ], int m, int n)
{ int i,j,min;
for (i=0;i <m;i + + )
{ min: (1);
for (j=1; j<n; j+ +)
if(A[i][j]<min) (2);
for (j=0; j<n; j+ +)
if ((3))
{ p=0;
while (p<m&&(4))p+ +;
if (p > = m)printf ("%d,%d,%d\n",i,j,min);
}
}
}
[问题1] 将函数代码中的(1)~(4)处补充完整
[问题2]在上述代码的执行过程中,若A为矩阵,则调用saddle(A,3,3)后输出是(5)。
第6题:
已知有一维数组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
第7题:
按行优先顺序存储下三角矩阵A。的非零元素,则计算非零元素aij(下标)(1≤j≤i≤n)的地址的公式为Loc(aij=【 】+i*(i-1)/2+(j-1)。
第8题:
按行优先顺序存储下三角矩阵Ann的非零元素,则计算非零元素aij(1≤j≤i≤n)的地址的公式为Loc(aij)=Loc(aii)+______。
第9题:
已知对称矩阵An*n(Ai,j=Aj,i)的主对角线元素全部为O,若用一维数组B仅存储矩阵A的下三角区域的所有元素(不包括主对角线元素),则数组B的大小为( )。
A.n(n-1)
B.n2/2
C.n(n-1)/2
D.n(n+1)/2
第10题:
若将N阶对称矩阵A按照行序为主序方式将包括主对角线元素在内的下三角形的所有元素依次存放在一个一维数组B中,则该对称矩阵在B中占用了(40)—个数组元素。(40)
A.N2
B.N×(N-1)
C.N×(N+1)/2
D.N×(N-1)/2