itgle.com
参考答案和解析
sizeof(a)/sizeof(int)
更多“若有下面的数组定义,则数组a的元素个数是()。 int a[][3]={0,1,2,3,4,5,6,7,8,9};”相关问题
  • 第1题:

    若有定义“int*p[3];”,则以下叙述中正确的是( )。

    A.定义了一个基类型为int的指针变量p,该变量具有3个指针

    B.定义了一个指针数组p,该数组含有3个元素,每个元素都是基类型为int的指针

    C.定义了一个名为*p的整型数组,该数组含有3个int类型元素

    D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有3个int类型元素


    正确答案:B
    解析:本题定义了一个指针数组p,每个元素都是基类型为int,它的长度为3即该数组含有3个元素。选项A、C和D都不正确,只有选项B符合题意。

  • 第2题:

    假定一个二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为【 】,所占字节存储空间的字节数为【 】。


    正确答案:15 60
    15 60 解析:所含元素的个数为15个,所占存储空间的字节数为15*4=60个。

  • 第3题:

    若有定义int a[9],+P=a;,则P+5表示( )。A.数组元素a[5]的值B.数组元素a[5]的地址SXB

    若有定义int a[9],+P=a;,则P+5表示( )。

    A.数组元素a[5]的值

    B.数组元素a[5]的地址

    C.数组元素a[6]的地址

    D.数组元素a[0]的值加上5


    正确答案:B
    本题考查了通过指针来引用一维数组元素的方法。题中*P=a;这一赋值语句是指针P指向了数组a的首地址,P+5是指针P向后移动了5个int类型的存储单元,所以P+5指向了数组元素a[5]。

  • 第4题:

    若有定义:int *p[3];则以下叙述中正确的是( )。

    A.定义了一个基类型为int的指针变量p,该变量具有三个指针

    B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

    C.定义了一个名为*p的整型数组,该数组含有三个int类型元素

    D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素


    正确答案:B
    解析:当一个数组中的元素均为指针类型数据时,该数组就称为指针数组。int*p[3]表示此数组是指针类型的,每个数组元素(指针变量)都是指向一个整型的指针变量。

  • 第5题:

    若有定义:iht*p[3];,则以下叙述中正确的是

    A.定义了一个基类型为int的指针变量p,该变量具有三个指针

    B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

    C.定义了一个名为*p的整型数组,该数组含有三个int类型元素

    D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素


    正确答案:B
    解析:指针数组也是一种数组,所有有关的概念都适用于它。但它与普通的数组又有区别,它的数组元素是指针类型,只能用来存放地址。其格式为:存储类型数据类型*指针数组名[长度1],其含义为:定义了一个长度1的数组,其中数组元素为相应存储类型的指针。

  • 第6题:

    数组int a[3][3];共定义了____________个数组元素。


    正确答案:
    9

  • 第7题:

    若有下列定义,则对a数组元素地址的正确引用是( )。int a[5],*p=a;A.p+5 B.*a+1

    若有下列定义,则对a数组元素地址的正确引用是( )。

    int a[5],*p=a;

    A.p+5

    B.*a+1

    C.&a+1

    D.&a[0]


    正确答案:D
    本题考查数组元素的地址的引用。A中,p+5引用的是a[5]的地址,而数组a只有5个元素,即a[0]、a[1]、a[2]、a[3]、a[4],所以引用错误(注:数组元素下标从0开始);B中,*a+1指的是将数组a的第一个元素加1;选项C中,不存在这种引用方式;D中,&a[0]引用的是数组的首地址。

  • 第8题:

    若有定义:int a[10],*p=a;则表示数组元素a[3]的错误选项是()。

    • A、*(a+=3)
    • B、*(p+=3)
    • C、*(a+3)
    • D、p[3]

    正确答案:A

  • 第9题:

    定义int a[2][3];表示数组a中的元素个数是()个.


    正确答案:6

  • 第10题:

    定义整数一维数组inta[5]={1,2,3}则数组a的元素个数是3


    正确答案:错误

  • 第11题:

    填空题
    假定二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为()。

    正确答案: 15
    解析: 暂无解析

  • 第12题:

    单选题
    若有定义:int a[10],*p=a;则表示数组元素a[3]的错误选项是()。
    A

    *(a+=3)

    B

    *(p+=3)

    C

    *(a+3)

    D

    p[3]


    正确答案: C
    解析: 暂无解析

  • 第13题:

    若有定义int(*pt)[3];,则下列说法不正确的是( )。

    A.int(*pt)[3]是一个数组指针

    B.指针pt指向一个有3个整型变量的数组

    C.定义了一个名为*pt、具有三个元素的整型数组

    D.定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组


    正确答案:D
    解析:首先,pt跟*结合,所以是一个指针,所指向的对象是含有3个元素的数组。所定义的指针没加const,所以是个指针变量,还可以指向类似对象的其他元素,也就是说还可以指向其他含有3个元素的数组。

  • 第14题:

    定义数组可使用命令DIMENSIONX(2,3),则数组中包含的元素个数为【 】 。


    正确答案:【 】6
    【 】6 解析:本题中,系统定义的数组是一个二维数组,数组中的元素个数等于数组下标值的上限乘以下标值的下限,即2×3=6。

  • 第15题:

    若有定义:int a[3][4],则正确引用数组 a 元素的是( ) 。

    A. a[2][4]

    B. a[3][3]

    C. a[0][0]

    D. a[3][4]


    正确答案:C

  • 第16题:

    若有定义int(*pt)[3];,则下列说法不正确的是( )。

    A)int(*pt)[3]是一个数组指针

    B)指针pt指向一个有3个整型变量的数组

    C)定义了一一个名为*pt、具有三个元素的整型数组

    D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组


    正确答案:D
    首先,pt跟*结合,所以是一个指针,所指向的对象是含有3个元素的数组。所定义的指针没加const,所以是个指针变量,还可以指向类似对象的其他元素,也就是说还可以指向其他含有3个元素的数组。

  • 第17题:

    若有定义“int b[8],*p=b;”,则p+6表示( )。A.数组元素b[6]的值B.数组元素b[6]的地址SX

    若有定义“int b[8],*p=b;”,则p+6表示( )。

    A.数组元素b[6]的值

    B.数组元素b[6]的地址

    C.数组元素b[7]的地址

    D.数组元素b[o]的值加上6


    正确答案:B
    指针中存放的是变量的地址,指针也可以进行增减运算,这时指针移动的最小单位是一个存储单元,而不是一个字节。所以题中p+6指的是将指针向后移动了6个存储单元,即指向b[6],存放的是b[6]的地址。

  • 第18题:

    若有int *x[3]:则以下表述正确的是 ______。

    A.x是一个指向具有3个元素的整型数组的指针

    B.x是一个指向int型变量的指针

    C.x是一个有3个元素的指针数组,每个元素是一个int型指针

    D.x是一个数组,该数组的元素是指针x所指向的变量


    正确答案:C

  • 第19题:

    假定二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为()。
    15

  • 第20题:

    以下关于数组的描述中,正确的有()

    • A、有定义chara[3];则定义了a[1]、a[2]、a[3]三个数组元素
    • B、构成字符数组的各个元素必须是字符类型的数据
    • C、若有定义chara[]="hello";,则数组a的长度为6
    • D、设有数组定义chararray[]="China";则数组array所占的空间为5个字节

    正确答案:B,C

  • 第21题:

    定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为:()

    • A、24
    • B、25
    • C、18
    • D、17

    正确答案:B

  • 第22题:

    填空题
    假定一个二维数组的定义语句为"int[][]x=newint[3][4];",则该数组包含的整型元素的个数为()。

    正确答案: 12
    解析: 暂无解析

  • 第23题:

    单选题
    若有定义 int(* pt)[3]; 则下列说法中正确的是(  )。
    A

    定义了基类型为int的三个指针变量

    B

    定义了基类型为int的具有三个元素的指针数组pt

    C

    定义了一个名为 * pt、具有三个元素的整型数组

    D

    定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组


    正确答案: B
    解析:
    int(*pt)[3];语句定义了一个指向一维数组的指针pt,该一维数组具有三个int型元素。D项,按照C语言中二维数组的定义知,二维数组先进行行排列,再进行列排列,故pt也可以指向每行有三个整数元素的二维数组。答案选择D选项。

  • 第24题:

    单选题
    以下叙述中错误的是(  )。
    A

    同一个数组中所有元素的类型相同

    B

    不可以跳过前面的数组元素给后面的元素赋初值0

    C

    定义语句int a[10]={0};给a数组中所有元素赋初值0

    D

    若有定义语句int a[4]={1,2,3,4,5};,编译时将忽略多余的初值


    正确答案: B
    解析:
    一维数组初始化时,不可能跳过前面的元素给后面的元素赋初值,当所赋初值少于所定义数组的元素个数时,将自动给后面的元素补以初值0,当所赋初值多于所定义数组的元素个数时,在编译时将给出出错信息。答案选择D选项。