更多“ 以下能正确定义二维数组a[2][3]的是 ”相关问题
  • 第1题:

    以下能正确定义二维数组的是( )。

    A.int a[][3];

    B.int a[][3]={2*3};

    C.int a[][3]={};

    D.int a[2][3]={{1},{2},{3,4}};


    正确答案:B
    解析:选项A中省略了第一维的长度,在C语言中是不允许的,故选项A错误;选项C也是省略第一维的长度;选项D中定义了一个2行3列的数组,而在赋值的时候却赋了一个3行的值给它,显然不正确,故选项D错误,所以,4个选项中选项B符合题意。

  • 第2题:

    以下能正确定义二维数组的是( )。

    A.int a[][3];

    B.int a[][3] ={2*3};

    C.int a[][3] ={};

    D.int a[2][3] ={{1},{2},{3,4}}:


    正确答案:A
    解析:本题考查二维数组的定义。选项B)不符合二维数组的定义规范;选项C)企图给数组赋空值,错误;选项D)定义的a[2)[3]说明a是一个2行3列的数组,而初始化却赋了3行,所以选项D)错误。

  • 第3题:

    以下能正确定义二维数组的是()。

    A.int a[][3];

    B.int a[][3]={2*3};

    C.int a[3][]={};

    D.int a[2][3]={{1},{2},{3,4}}


    int a[][3]={2*3};

  • 第4题:

    以下能正确定义二维数组的是( )。

    A.int a[][3];

    B.int a[][3]={2*3};

    C.int a[][3]={};

    D.int a[2][3]={{1},{2},{3,4}};


    正确答案:B
    解析:选项A中省略了第1维的长度,但没有指定初始化列表,系统无法确定第1维的长度,故编译不会通过;C语言中,初始化列表不能为空,所以选项C错误;选项D中定义了一个2行3列的数组,而在初始化列表中包含了3个大括号,即初始化3行值,编译不会通过,故选项D错误。所以,4个选项中选项B符合题意。

  • 第5题:

    以下能正确定义二维数组的是______。

    A.int a[][3];

    B.int a[][3]={2*3};

    C.int a[][3]={};

    D.int a[2][3]={{1), {2}, {3,4}};


    正确答案:B
    解析:(1)二维数组的定义二维数组的定义方式为:类型说明符数组名[常量表达式][常量表达式]。二维数组在内存中是按行优先的顺序存放的,即先存放第一行的元素,再存放第二行的元素,依次类推。(2)二维数组元素的引用二维数组元素的表示形式为:数组名[下标][下标],下标可以是整型常量或整型表达式;其范围为:0~(常量表达式-1)。(3)二维数组的初始化可以用以下方法对二维数组元素初始化。①分行给二维数组赋初值,例如;inta[2][2]=({1,2),{3,4));这种赋值方式比较直观,把第1个大括号内的数据赋给第1行的元素,第2个大括号内的数据赋给第2行的元素,即按行赋值。②可以将所有数据写在一个大括号内,按数组排列的顺序对各个元素赋初值。③可以对部分元素赋初值,没有初始化的元素值为0。④如果对全部数组元素赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省略。