单选题若有定义语句:int m[][3]={1,2,3,4,5,6,7};,则与该语句等价的是( )。Aint m[][3]={{1,2,3},{4,5,6},{7}};Bint m[][3]={{1,2},{3,4},{5,6,7}};Cint m[][3]={{1,2,3},{4,5},{6,7}};Dint m[][3]={{1},{2,3,4},{5,6,7}};

单选题
若有定义语句:int m[][3]={1,2,3,4,5,6,7};,则与该语句等价的是( )。
A

int m[][3]={{1,2,3},{4,5,6},{7}};

B

int m[][3]={{1,2},{3,4},{5,6,7}};

C

int m[][3]={{1,2,3},{4,5},{6,7}};

D

int m[][3]={{1},{2,3,4},{5,6,7}};


参考解析

解析:
考查二维数组的初始化。二维数组的初始化有两种方式,①分行初始化,方式为:数据类型数组名[行下标表达式][列下标表达式]={{第0行初值},{第1行初值表},…{最后1行初值表}};,如果初值表只对部分元素赋初值,没有被赋初值的元素将被自动赋值为0。②不分行将所有数据依次列在一个花括号里,即数据类型数组名[行下标表达式][列下标表达式]={初值表};,这种方式的赋值就是将初值表的数据依次赋予数组的每个元素,其中赋值是按照数组元素在内存中的位置进行的。题目中的初始化语句是第二种方法,如果用第一种方法应该是int m[][3] = {{1,2,3}, {4,5,6}, {7}};,这里应该保证除r最后一行,每一行都满列有3个元素,答案选择A选项。

相关考题:

若有定义语句:int*a,b;,则变量b 的数据类型是( )。

若有定义语句: int a=5; ,则表达式: a++ 的值是 【 6 】 。

( 6 )若有定义语句: int* a, b; ,则变量 b 的数据类型是 【 6 】 。

( 6 )若有定义语句: int a=3,b=2,c=1;, 则表达式 ab?a:b 的值是 ___________ 。

若有定义语句int b=2;,则表达式(b 若有定义语句int b=2;,则表达式(bA.4B.8C.0D.2

若有定义语句:int x=3,y=2,z=1;则表达式x <y?x:y的值是______。

若有定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是______。A.m[-i]B.m[2*2]C.m[m[0]]D.m[m[i]]

若有定义语句int b=2;,则表达式(b2)/(3||b)的值是( )。A.4B.8C.0D.2

若有定义:float x=1.5;int a=1,b=3,c--2;,则正确的switch语句是( )。 .A.AB.BC.CD.D

若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。A.p=a; B.p[0]=a; 若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。A.p=a;B.p[0]=a;C.p[o]=&a[1][2];D.p[1]=&a;

若有定义:int a=1,b=2,c=3;则语句++a||++b运行后b的值为() A.1B.0C.2D.3

若有定义:int x;则语句x=(2*3)+6%5;运行后,x的值是() A.8B.7C.6D.5

若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是( )。

若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。 A.-20B.-l0C.0 若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。A.-20B.-l0C.0D.10

若有定义则a的定义与下面哪个语句等价A.int(*A.[10];B.int}g[10];C.int*a;D.int a[10];

若有定义语句:int m[][3]={1,2,3,4,5,6,7};,则与该语句等价的是A.int m[][3j={{1,2,3},{4,5,6},{i 7}};B.int m[][3]={{1,2},{3,4},{5,6,7}};C.int m[][3]={{1,2,3},{4,5},{6,7}};D.int nl[][3]={{1},{2,3,4},{5,6,7}};

有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。 A.int p[4];B.int**P;SXB 有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。A.int p[4];B.int**P;C.int*(p[4]);D.int(*p)[4];

设有定义:int a,*p=a,* *pp=p;,则与a=100;等价的语句为()A.**p=100;B.**pp=100;C.a,* *pp=p;,则与a=100;等价的语句为( )A.**p=100;B.**pp=100;C.*p=100;D.*pp=10;

若有定义语句:int a=3,b=2,c=1;,则表达式a<b?a:b的值是【 】。

若有语句:int x,*p=x;则与该语句等价的语句是()A、intx,*p;*p=x;B、int x,*p;p=x;C、int x,*p;*p=x;D、int x,*p;p=x

若有定义:int x;则语句x=(2*3)+6%5;运行后,x的值是()A、8B、7C、6D、5

单选题若有定义:typedef int T[10];T *a[20];则与上述定义完全等价的说明语句是(  )。Aint *a[20][10];Bint *a[20];Cint *a[10];Dint *a[10][20];

单选题若有语句:int x,*p=x;则与该语句等价的语句是()Aintx,*p;*p=x;Bint x,*p;p=x;Cint x,*p;*p=x;Dint x,*p;p=x

单选题若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是(  )。

单选题若有定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是(  )。Am[--i]Bm[2*2]Cm[m[0]]Dm[m[i]]

单选题若有定义语句:int a[2][3],*p[3];则以下语句中正确的是(  )。Ap[0]=a[1][2];Bp[0]=a;Cp=a;Dp[1]=a;

单选题若有定义语句:int a=12;,则执行语句:a+=a-=a*a;后,a的值是(  )。A-264B552C144D264