设n阶下三角矩阵A已压缩到一维数组B[1..n*(n+1)/2]中,若按行为主序存储,则A[i,j]对应的B中存储位置为 ( )。(下标均从1 开始)
A: i*(i+1)/2 + j
B: i*(i-1)/2 + j
C: i*(i+1)/2 + j -1
D: i*(i-1)/2 + j-1
A: i*(i+1)/2 + j
B: i*(i-1)/2 + j
C: i*(i+1)/2 + j -1
D: i*(i-1)/2 + j-1
举一反三
- 设 n 阶下三角矩阵 A 已按行序为主压缩到一维数组 B[1 .. n*(n+1)/2]中,则下三角中 A[i,j] 对应的 B 中存储下标为 ( )。(下标均从 1 开始) A: i*(i-1)/2+j-1 B: i*(i-1)/2+j C: i*(i+1)/2+j-1 D: i*(i+1)/2+j
- 设n阶方阵A是一对称矩阵,为节省存储空间,将其下三角(包括对角线)以行序为主序存储在一维数组B(1: n(n+1)/2)中,则对任一上三角元素aij(i<;j,1≤i≤n,1≤j≤n),其在一维数组B中的下标位置k是( )。 A: i(i-1)/2+j B: j(j-1)/2+i C: i(j-1)/2+1 D: j(i-1)/2+1
- A[n][n]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组T[n(n+1)/2]中,则对任一上三角元素a[i][j]对应T[k]的下标k是()。[/i] A: i(i—1)/2+j B: j(j一1)/2+i C: i(j—i)/2+1 D: j(i—1)/2+1
- 【单选题】运行下面的程序,得到的输出是()#include<stdio.h>int main() { int i, j; for(i=1;i<=2;i++) for(j=1;j<=2;j++) printf("i=%d, j=%d ",i,j);} A. i=1, j=1 i=1 , j=2 i=2 , j=1 i=2 , j=2 B. i=1, j=1 i=2 , j=1 i=1 , j=2 i=2 , j=2 C. i=1, j=1 i=2 , j=2 i=1 , j=1 i=2 , j=2 D. i=1, j=1 i=1 , j=1 i=2 , j=2 i=2 , j=2
- 设n阶下三角矩阵A已压缩到一维数组B[1..n*(n+1)/2]中,若按行为主序存储,则A[i,j]对应的B中存储位置为 。(下标均从1 开始)