• 2022-05-31
    按行优先顺序存储下三角矩阵
    A: LOC(aij)=LOC(a11)+i×(i+1)/2+j
    B: LOC(aij)=LOC(a11)+i×(i+1)/2+(j-1)
    C: LOC(aij)=LOC(a11)+i×(i-1)/2+j
    D: LOC(aij)=LOC(a11)+i×(i-1)/2+(j-1)
  • D
    本题目来自[网课答案]本页地址:https://www.wkda.cn/ask/yoyyajxetmymajo.html

    举一反三

    内容

    • 0

      若下三角矩阵An*n,按行顺序压缩存储在数组a[0..(n+1)n/2]中,则非零元素aij的地址为()(设每个元素占d个字节) A: LOC(a00)+((j-1)j/2+i)*d B: LOC(a00)+((i+1)i/2+j)*d C: LOC(a00)+((i-1)i/2+j-1)*d D: LOC(a00)+((i-1)i/2+i-1)*d

    • 1

      二维数组Amn按行序为主序存放在内存,每个数组元素占1个存储单元,则元素aij的地址计算公式是( )。 A: loc(aij)-loc(all)+[(i-1)*m+(j-1)] B: loc(aij)-loc(all)+[(j-1)*m+(i-1)] C: loc(aij)-loc(all)+[(i-1)*n+(j-1)] D: loc(aij)-loc(all)+[(j-1)*n+(i-1)]

    • 2

      二维数组A[m,n]按行序为主序存放在内存,每个数组元素占1个存储单元,则元素aij的地址计算公式是( )。 A: A) LOC(aij)=LOC(a00)+[(i-1)*m+(j-1)] B: B) LOC(aij)=LOC(a00)+[(j-1)*m+(i-1)] C: C) LOC(aij)=LOC(a00)+[(i-1)*n+(j-1)] D: D) LOC(aij)=LOC(a00)+[(j-1)*n+(i-1)]

    • 3

      将10个数据按升序顺序排序,补全选择排序程序代码中语句。 main() {int a&#91;10&#93;,n=10, i, j, loc,t; for(i=0;i&#91;n;i++) scanf("%d",&a[i]); for(_____;i<n-1;i++) { ____________; for(j=i+1;j<10;j++) if(a&#91;loc&#93;&#93;a&#91;j&#93;) loc=j; if(loc!=i) {t=a[i]; a[i]=a&#91;loc&#93;; a&#91;loc&#93;=t;} } for(i=0;i<10;i++) printf("%d ",a[i]); }[/i][/i][/i][/i] A: i=0 和 loc=i+1 B: i=0 和 loc=i C: i=1 和 loc=i D: i=1和 loc=i+1

    • 4

      设二维数组A&#91;0..m-1&#93;&#91;0..n-1&#93;按行优先顺序存储在内存中,每个元素aij占d个字节,则元素aij的地址为( ) A: LOC(a00)+(j*n+i-1)*d B: LOC(a00)+((j-1)*n+i-1)*d C: LOC(a00)+((i-1)*n+j-1)*d D: LOC(a00)+(i*n+j)*d