若有定义:int a[2][3];则才a数组的第i行第j列(假调i,j已正确说明并赋值)元素值的正确引用为
A.*(*(a+i)+j)
B.(a+i)[j]
C.*(a+i+j)
D.*(a+i)+j
第1题:
已知有一维数组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
第2题:
阅读下列函数说明和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)。
第3题:
若有说明int i,j=2, *P=&i;,则能完成i=j赋值功能的语句是_______。
A.i=*p;
B.*P2=*&j;
C.i=&j;
D.i=**p;
第4题:
若有定义int a[2][3];,则对a数组的第i行第j列(假设i,j已正确说明并赋值.元素值的正确引用为( )。
A.*(*(a+i.+j.
B.(a+i.[j]
C.*(a+i+j.
D.*(a+i.+j
第5题:
若有定义:int a[4][10];,则以下选项中对数组元素a[i][j]引用错误的是_______。 (0<=i<4,0<=j<10)
A.*(&a[0][0]+10*i+j)
B.*(a+i)+j
C.*(*(a+i)+j)
D.*(a[i]+j)
第6题:
若有说明int m[3][4]={3,9,7,8.5},(*q)[4];和赋值语句q=m;,则对数组元素m[i][j](其中0<=i<3,0<=j<4)值的正确引用为( )。
A.(q+i)[j]
B.*q[i][j]
C.*(*q[i]+j)
D.*(*(q+i)+j)
第7题:
A.7
B.8
C.9
D.10
第8题:
若有定义:"int a[2][3];"则对a数组的第i行第j列无素的正确引用为( )。
A.*(*(a+i)+j)
B.(a+i) [j]
C.*(a+i+j)
D.*(a+i)+j
第9题:
下面程序的功能是 : 将 N 行 N 列二维数组中每一行的元素进行排序 , 第 0 行从小到大排序 , 第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如:
define N 4
void sort(int a[][N])
{ int i, j, k, t;
for (i=0; i<N;i++)
for (j=0; j<N-1:j++)
for (k= 【 13 】 ; k<N;K++)
/* 判断行下标是否为偶数来确定按升序或降序来排序 */
if ( 【 14 】 ? a[i][j]<a[i][k]); a[i][j]>a[i][k])
{ t = a[i][j];
a[i][j]=a[i][k];
a[i][k] = t;
}
}
void outarr(int a[N][N])
{ …… }
main()
{ int aa[N][N]={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};
outarr(aa); /* 以矩阵的形式输出二维数组 */
sort(aa);
outarr(aa);
}
第10题:
若有定义“inta[3][4],*p;”,则对数组元素a[i][j](0<=i<3,0<=j<4)正确的引用是()。
第11题:
若有定义:inta[3][4];则对a数组的第i行第j列(假设i,j已正确说明并赋值)元素值的不正确引用为()
第12题:
42
15
36
24
第13题:
A.*(a[i]+j)
B.(a+i)
C.*(a+j)
D.a[i]+j
第14题:
若有说明int m[3][4]={3,9,7,8.5},(*q)[4];和赋值语句q=m;,则对数组元素m[i][j](其中O<=i<3,0<=j<4)值的正确引用为( )。
A)(q i)[j]
B)*q[il][j]
C)*(*q[i] j)
D)*(*(q i) j)
第15题:
若在以下定义和赋值语句,则才s数组的第i行第j列(假设i,j已正确说明并赋值)元素地址的合法引用为 int s[2][3]={0},( *p)[3]; p=s;
A.*(*(p+i)+j)
B.*(p[i]+j)
C.(p+i)+j
D.(*(p+i))[j]
第16题:
以下程序中,函数 sumColumM的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。
define M 2
define N 4
void SumColumMin(int a[M][N],int *sum)
{ int i,j,k,s=0;
for(i=0;i〈N;i++)
{ k=0;
for(j=1;j<M;j++)
if(a[k][i]>a[j][i])k=j;
s+=【 】;
}
【 】 =s;
}
main( )
{ int x[M][N]={3,2,5,1,4,1,8,3},s;
SumColumMin(【 】);
printf("%d\n",s);
}
第17题:
若有定义: “inta[2Ⅶ3];”则对a数组的第i行第j列元素的正确引用为( )
A.**(a+i)+j)
B.(a+i)[j]
C.*(a+i+j)
D.*(a+i)+j
第18题:
A.*(*(a+i)+j)
B.p[i][j]
C.(*(p+i))[j]
D.p[i]+j
第19题:
若有定义int a[2][3];,则对a数组的第i行第j列(假设i,j已正确说明并赋值)元素值的正确引用为
A.*(*(a+i)+j)
B.(a+i)[j]
C.*(a+i+j)
D.*(a+i)+j
第20题:
已知有一维数组A(0..m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系(4)可将元素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
第21题:
第22题:
在J2EE中,对于PreparedStatement的方法setInt(int i,int x)描述正确的是()。
第23题:
*(*(a+i)+j)
p[i][j]
(*(p+i))[j]
p[i]+j