34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )A.SA+141 B.SA+180 C.SA+222 D.SA+225 为什

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 07:40:00
34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为(A)A.SA+141B.

34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )A.SA+141 B.SA+180 C.SA+222 D.SA+225 为什
34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )
A.SA+141 B.SA+180 C.SA+222 D.SA+225
为什么要选A呢?请求完整,精确,易懂,仔细的回答!

34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )A.SA+141 B.SA+180 C.SA+222 D.SA+225 为什
公式是这样的:SA+((i-1)*10+(j-1))*3.
这样看好了:A[5,8]总共5行,其中第5行只有8个元素,前4行都是10个元素,这样不难理解(i-1)*10了,为什么要j要-1呢,因为第一个元素的地址是SA,第二个的是SA+1*3.依次类推,公式SA+((i-1)*10+(j-1))*3就是表示在第一个元素的基础上加上偏移量也就是第i*19+j个元素的地址了.
原来把一个问题说得简单明了不是件容易的事,汗.

C语言计算数组中任一元素a[i][j]在数组中位置的公式若二维数组a有m列,假设a[0][0]位于数组的第一个位置上,则计算数组中任一元素a[i][j]在数组中位置的公式为A i * m + jB j * m + iC i * m + j-1D i * m + 【求助c语言】已知int a【2】【3】,则对数组元素a【i】【j】的地址表述错误的是已知int a【2】【3】,则对数组元素a【i】【j】的地址表述错误的是A,&a[i][j] B,*(a[i]+j) C,*(a+i)+j D,*a+i*3+j 已知二维数组A[M][N]采用按行为主的顺序存储结构,每个元素占k个存储单元,第一个元素的地址为LOC(A[0][0]),那么,LOC(A[i][j])= ____________. 已知数组A中,每个元素A(I,J)在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A(8,5)的起始地址为( ).A、SA+141 B、SA+180 C、S 19、已知数组A中,每个元素A(I,J)在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A(8,5)的起始地址为( ).A、SA+141 B、SA+180 C、SA+222 D、 34.已知数组A中,每个元素A[I,J]在存贮时要占3个字节,设I从1变化到8,J从1变化到10,分配内存时是从地址SA开始连续按行存贮分配的.试问:A[5,8]的起始地址为( A )A.SA+141 B.SA+180 C.SA+222 D.SA+225 为什 若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为 (假设a 在java中若二维数组a有n列,那么a[i][j]前的元素个数为?怎么用i,j,n算出结果 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为________.(假设a[0][0]位于数组的第1个位置上) A、i*m+j B、j*m+i C、i*m+j-1 D、i*m+j+1 输入20个整数存入一数组,输出其中能被数组中其它元素整除的那些数组元素.main(){int i,k,j,a[20];k=0;printf(Please input twenty numbers);for(i=0;i 一道C语言的题.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为?A.i*m+j B.j*m+i C.i*m+j-1 D.i*m+j+1为什么?在数组中的位置是什么意思? 『数据结构』 二维数组 1.设二维数组A[0…m-1][0…n-1]按行优先顺序存储在内存中,第一个元素的地址为p,每个元素占k个字节,则元素aij的地址为( ).A.p +[i*n+j-1]*k B.p+[(i-1)*n+j-1]*kC.p+[(j-1)*n+i-1]*k D. 若有定义 int a[3][4],*p; 则对数组元素a[i][j](0 c语言中,指针于二维数组的问题假设我们引用二维数组a中的元素a[I][J],指针P指向a.书上说引用方法有四种 p[i]+[j] *(*(p+i)+j) (*(p+i))[j]) *(p[i]+j)为什么要弄得这么复杂啊,而且看不懂为什么可以这 若有定义:int a[4][6];则能正确表示a数组中任一元素a[i][j](此处0 假设一个数组有十个元素下面是我的算法for(i = 0; i < 10; i++ )for(j = i; j < 10; j++){if(a[i] 数组A中,每个元素A[i,j]的长度均为32个二进位,行下标从-1到9,列下标从1到11,从首地址S开始连续存放主存储器中,主存储器字长为16位.求:   (1)存放该数组所需多少单元?   (2)存放数 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j) 定义 int a[3][4]; 取二维数组元素数据a[i][j],为什么可以用 *(&a[0][0]+4*i+j) 和 *(a[0]+4*i+j)