举一反三
- 若有说明语句"int a[4][10];"且 0<=i<4,0<=j<10,则对数组元素 a[i][j]的错误引用是*(a+i)[j]。[/i]
- 若有定义:int a[4][10];,则以下选项中对数组元素a[i][j]引用错误的是()。 (o<=i<4,0<=j<=10[/i] A: *(&a[0][0]+10*i+j) B: *(a+i)+j C: *(*(a+i)+j) D: *(a[i]+j)
- 若有说明 int a[5][4];,则对 a数组的i行j列(假设i,j已正确说明)元素值的引用正确的是______ (说明:0行0列元素为a[0][0])。 A: *(*(a+i)+j) B: (a+i)[j] C: *(a+i+j) D: *(a+i)+j
- 若有int a[2][3],则下列表示a数组的i行j列元素地址的是______. A: *(a[i]+j) B: *(a+j)+i C: a[j]+i D: *(a+i) + j
- 以下程序的运行结果是 。 #include func(int array[][4],int m) {int i,j,k; k=0; for(i=0;i<3;i++) for(j=0;j<4;j++) if(array[i][j][/i]
内容
- 0
#include [stdio.h]int main() { int a[3][3],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=3*i+j; for(i=0;i<3;i++) printf("%d ",a[i][1]); return 0;}[/i][/i]
- 1
若有int a[2][3],则对a数组的i行j列元素地址的正确引用为______. A: *(a[i]+j) B: *(a+j)+i C: a[j]+i D: *(a+i) + j
- 2
以下程序执行的结果是( )。#include <;stdio.h>;main(){ int i,j,row=0,col=0,m;static int a[3][3]={1,-2,0,4,-5,6,2,4};m=a[0][0];for(i=0;i<;3;i++)for(j=0;j<;3;j++)if(a[i][j]<;m){m=a[i][j];row=i;col=j;}printf("(%d,%d)=%d\n",row,col,m);}[/i][/i]
- 3
下面 rotate 函数的功能是:将 n 行 n 列的矩阵a 转置#define N 4 void rotate(int a[][N]) { int i,j,t; for(i=0;i 答案: (1) j (2) a[i][j]=a[j][i] 答案解析: 难易: 中 知识点:[/i][/i]
- 4
下列代码段执行后的结果是 int[] a= {6,5,4,1,2,3}; int i,j; for(i=0,j=5;i<j;i++,j--){ a[i]= a[j] * a[j]; } for(i=0;i<6;i++){ System. out.print(a[i] +" "); }[/i][/i]