下列关于数组初始化的说法,正确的是( )。A.对于int a[5];它的数组元素初值为0B.int a[5]={1,3,5,7,8,9};是可以的,这时数组长度自动变为6C.static int a[5];的数组元素初值为0D.int a[5]={1.3,5};是不合法的,因为数组长度为5,而仅有3个数据,不知赋给哪个元素

题目

下列关于数组初始化的说法,正确的是( )。

A.对于int a[5];它的数组元素初值为0

B.int a[5]={1,3,5,7,8,9};是可以的,这时数组长度自动变为6

C.static int a[5];的数组元素初值为0

D.int a[5]={1.3,5};是不合法的,因为数组长度为5,而仅有3个数据,不知赋给哪个元素


相似考题
参考答案和解析
正确答案:C
解析:数组一旦定义,其长度就不可变了;初始化数组的数据个数不要大于数组长度,否则会出现逻辑错;初始化数组的数据个数若小于数组长度,则先赋给前边的元素,后边的元素值自动初始化为0;静态数组如果没有初始化自动初始化为0。
更多“下列关于数组初始化的说法,正确的是()。A.对于int a[5];它的数组元素初值为0B.int a[5]={1,3,5,7, ”相关问题
  • 第1题:

    下列关于数组初始化的说法不正确的是().

    A.char s[10]={’a’,’b’,’c’,’d’,’c’,’f’,’g’,’h’,’i’};”表示s[9]元素值为空字符

    B.对于“char s|10|;”它的元素初值是不确定的

    C.char s[10]={‘a’,’b’,’c’}”是不合法的,因为数组长度为10,而初始值仅有3个

    D.若对数组s定义:“static char s[10];”,则数组元素值均为空字符


    char s[10]={‘a’,’b’,’c’}”是不合法的,因为数组长度为10,而初始值仅有3个

  • 第2题:

    【单选题】关于数组部分元素初始化,以下说法正确的是()

    A.int b[10]={1,2,3}; 该语句定义了整数型数组b,它前3个元素的初值分别为1、2、3,其余元素的初值为0

    B.int b[10]={1,2,3}; 该语句定义了整数型数组b,它前3个元素的初值分别为1、2、3,其余元素的初值由数组a的存储属性决定

    C.int b[]={1,2,3}; 该语句定义了整数型数组b,它前3个元素的初值分别为1、2、3,其余元素的初值为0

    D.对数值型一维数组,当只对数组的部分元素初始化时,有时可以省略数组长度的说明。


    int b[10]={1,2,3}; 该语句定义了整数型数组 b ,它 前 3 个元素 的初值分别为 1 、 2 、 3 ,其余元素的初值由数组 a 的存储属性决定

  • 第3题:

    设有定义 int a[10]={1,1};则说法正确的是()。

    A.数组a有10个元素,后8个元素的初值为0

    B.数组a有10个元素,其中a[0]、a[1]的值为1,其他元素的值不确定

    C.数组a有2个元素,其值为1

    D.数组初始化错误,初值个数少于数组元素个数


    数组a有10个元素,各元素的值为0

  • 第4题:

    下列对数组初始化语句的说明正确的理解是() int a[10]={6,7,8,9,10};

    A.将5个初值依次赋给数组前5个元素,剩余元素初始化为0

    B.将5个初值依次赋给数组前5个元素,剩余元素不进行初始化

    C.将5个初值依次赋给数组前5个元素,剩余元素随机赋值

    D.因为数组长度与初值的个数不相同,所以此语句不正确


    int[,] num4 = {{0,1},{0,1,2},{0,1,2,3}}

  • 第5题:

    9、对于 int *pa[5];说法正确的是()。

    A.pa是一个指向数组的指针,所指向的数组是5个int型元素

    B.pa是一个指向数组中第五个元素的指针,该元素是int型变量

    C.pa是一个具有5个元素的指针数组,每个元素是一个int型指针

    D.pa[5]是某个数组的第5个元素


    pa 是一个具有 5 个元素的指针数组,每个元素是一个 int 型指针