若在C程序中有以下说明和语句,则下面表示的都是对数组元素的正确引用的是(其中0<=i<4, 0<=j<3)
int main( )
{
int a[4][3]={0},(*ptr)[3],i,j;
ptr=a;
}
int main( )
{
int a[4][3]={0},(*ptr)[3],i,j;
ptr=a;
}
ptr[i][j], *(ptr[i]+j),*(a[i]+j)
举一反三
- 关于二维数组的输入输出,以下说法正确的是()。 A: 以下程序段,将输入a的全部元素。int a[3][4],i,j;for(i=0;i<;2;i++) for(j=0;j<;4;j++) scanf("%d",&a[i][j]); B: 以下程序段,将输入a数组的前两行元素的数据。int a[3][4],i,j;for(i=0;i<;2;i++) for(j=0;j<;4;j++) scanf("%d",&a[i][j]); C: 以下程序段,将输出a数组的全部元素int a[3][4],i,j;for(i=0;i<;3;i++) { for(j=0;j<;4;j++) printf("%d ",a[i][j]);} D: 以下程序段,将输出a数组的全部元素int a[3][4],i,j;for(i=0;i<;3;i++) { for(j=0;j<;4;j++) printf("%d ",a[i][j]);printf("\n");}
- 若有说明:int a[3][4],s; ,则对数组a的元素引用错误的是____________ 。 A: s=0; for(i=0;i<3;i++) for(j=0;j<4;j++) s+=a[i][j]; B: s=0; for(j=0;j<4;j++) for(i=0;i<3;i++) s+=a[i][j]; C: s=0; for(i=0;i<4;i++) for(j=0;j<3;j++) s+=a[j][i]; D: s=0; for(i=0;i<3;i++) for(j=0;j<4;j++) s+=a[j][i];
- 以下程序是求矩阵 a,b 的和,结果存入矩阵 c 中并按矩阵形式输出。请填空。 main() { int a[3][4]={{3,-2,7,5,},{1,0,4,-3},{6,8,0,2}}; int b[3][4]={{-2,0,1,4},{5,-1,7,6},{6,8,0,2}}; int i,j,c[3][4]; for(i=0;i<3;i++) for(j=0;j<4;j++) c[i][j]=____; for(i=0;i<3;i++) { for(j=0;j<4;j++) printf(“%3d”,c[i][j]); ____; } }
- 中国大学MOOC: 以下程序是求矩阵a,b的和,结果存入矩阵c中并按矩阵形式输出。请填空。#include int main(){int a[3][4]={{3,-2,7,5},{1,0,4,-3},{6,8,0,2}}; int b[3][4]={{-2,0,1,4},{5,-1,7,6},{6,8,0,2}}; int i,j,c[3][4]; for(i=0;i<3;i++) for(j=0;j<4;j++) c[i][j]= a[i][j]+b[i][j]; for(i=0;i<3;i++) {for(j=0; ;j++) printf(%3d,c[i][j]); printf( );} return 0;}
- 若有说明int m[3][4]={3,9,7,8.5},(*q)[4];和赋值语句q=m;,则对数组元素m[i][j](其中0<=i<3,0<=j<4)值的 正确引用为( )。
内容
- 0
若有以下程序: void main() { int a[3][4]={1,0,2,1,0,2,1,0,1,1,0,1}; int i,j,sum=0; for(i=0;i<=2;i++) for(j=0;j<=i;j++) sum+=a[i][j]; } 程序执行后的输出结果是:( )
- 1
如有以下定义: int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*ptr)[3]=a,*p=a[0]; 则下列能够正确表示数组元素a[1][2]的表达式是_____。
- 2
若有以下的定义和语句: main() {int a[4][3], *p[4], j; for(j=0; j<4; j++) p[j]=a[j]; ┇ } 则能表示a数组元素的表达式是:
- 3
以下使i的运算结果为4的语句是( ) A: int i=0,j=0;(i=3,(j++)+i); B: int i=1,j=0;j=i=(i=3)*2; C: int i=3,j=1;i=j++; D: int i=1,j=1;i+=j+=2;
- 4
【单选题】以下程序运行结果是() using namespace std; int main() { int i = 0, j = 5; do { i++; j--; if ( i>3 ) break; } while ( j>0 ); cout < } A. i= 4 j= 1 B. i= 3 j= 1 C. i= 3 j=5 D. i= 4 j= 5