设m行n列二维数组按行优先顺序存储,则元素A[i][j]的地址是。[/i]
A: LOC(A[0][0])+(i*m+j)
B: LOC(A[0][0])+(i*n+j)
C: LOC(A[0][0])+[(i-1)*n+j-1]
D: LOC(A[0][0])+[(i-1)*m+j-1]
A: LOC(A[0][0])+(i*m+j)
B: LOC(A[0][0])+(i*n+j)
C: LOC(A[0][0])+[(i-1)*n+j-1]
D: LOC(A[0][0])+[(i-1)*m+j-1]
举一反三
- 将10个数据按升序顺序排序,补全选择排序程序代码中语句。 main() {int a[10],n=10, i, j, loc,t; for(i=0;i[n;i++) scanf("%d",&a[i]); for(_____;i<n-1;i++) { ____________; for(j=i+1;j<10;j++) if(a[loc]]a[j]) loc=j; if(loc!=i) {t=a[i]; a[i]=a[loc]; a[loc]=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
- 对于一个二维数组A[m][n],若按行序为主序存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0]),则A[i][j]的地址是________。[/i] A: (i*n+j)*k B: Loc(A[0][0])+((i-1)*n+j-1)*k C: ((i-1)*n+j-1)*k D: Loc(A[0][0])+(i*n+j)*k
- 7、 若二维数组a有m列,则在a[i][j]之前的元素个数为( )(A)j*m+i (B)i*m+j (C)i*m+j-1 (D)i*m+j+1[/i] A: a[i][j]前有0到i-1共i行及0到j-1共j列,每行有m列,因此之前的元素个数为i*m+j B: a[i][j]前有0到i-1共i行及0到j-1共j列,每行有m列,因此之前的元素个数为i*m+j C: a[i][j]前有0到i-1共i行及0到j-1共j列,每行有m列,因此之前的元素个数为i*m+j D: a[i][j]前有0到i-1共i行及0到j-1共j列,每行有m列,因此之前的元素个数为i*m+j
- 将10个数据按升序顺序排序, 补全选择排序程序代码中语句。 main() {int a[10],n=10, i, j, loc,t; for(i=0;ia[j]) loc=j; if(loc!=i) {t=a[i]; a[i]=a[loc]; a[loc]=t;} for(i=0;i<10;i++) printf("%d ",a[i]); }
- 下列程序输出结果是:() int i,j,m,n; m=n=0; for(i=0;i<2;i++) for(j=0;j<2;j++) if(j>=i)m=1;n++; printf("n=%d ",n);