设有定义 int a[10]={0};则说法正确的是()。A.数组a有10个元素,各元素的值为0B.数组a有10个元素,其中a[0]的值为0,其他元素的值不确定C.数组a有1个元素,其值为0D.数组初始化错误,初值个数少于数组元素个数

题目

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

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

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

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

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


相似考题
更多“设有定义 int a[10]={0};则说法正确的是()。”相关问题
  • 第1题:

    设有定义int n=0,*p=&n,**q=&p;,则下列选项中正确的赋值语句是

    A.p=1;

    B.*q=2;

    C.q=p;

    D.*p=5;


    正确答案:D

  • 第2题:

    设有定义int a=b,则计算表达式 a+=a-=a*a 后,a为()

    A、-60

    B、0

    C、2

    D、-24


    参考答案:A

  • 第3题:

    执行完语句int[] x=new int[25];后,则下列( )说法是正确的。

    A.x[24]值为0

    B.x[24]值未定义

    C.x[25]值为0

    D.x[0]值为空


    正确答案:A

  • 第4题:

    设有如下定义 int x=10,y=3,z; 则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是( )

    A.3

    B.0

    C.4

    D.1


    正确答案:A

  • 第5题:

    要正确定义并初始化一个数组a,它含有5个元素,则正确的语句是______。

    A.int a[5]=(0,0,0,0,0);

    B.int a[5]={};

    C.int a[]={0,0,0,0,0};

    D.int a[]={5*0};


    正确答案:C
    解析:A项是错误的,赋值时用的是花括号而不是圆括号。B项错在不能初始化时在花括号内为空。D项错在不可以用表达式对数组一一赋值。C项虽然没有直接定义数组的大小,但是初始化时只赋了5个元素的值,系统会自动定义数组的大小为5,这种形式是正确的。

  • 第6题:

    以下对一维数组c进行正确的定义初始化的语句是A.int c[10]=0; B.int c[10]={0}*10; C.int c[1]={0,0,0,0,0,0,0}; D.int c[10]={0};


    正确答案:D
    本题主要考查数组的定义和初始化。在本题中,考查的是一维数组的定义和初始化操作。一维数组的定义格式为:
         数据类型说明 数组名[n];
    一维数组的初始化格式为:
         数据类型说明 数组名[n]={元素1,元素2,……,元素n};
         或者
         数据类型说明 数组名[]={元素1,元素2,……,元素n};
    另外,在定义数组和初始化数组时需要注意:
    (1)定义数组时的n值只能使用常量,不能使用变量。
    (2)定义数组时可以不标明数组元素的个数,而是通过赋初值的方式确定。
    (3)数组初始化时,数组的元素类型必须与定义的类型一致,当初值的个数小于整型常量n时,编译系统会自动补0。一旦给定初值数超过n,编译系统将报错。
    综上所述,不难找出本题正确的答案为D,在选项A和B中,数组的定义方式都是正确的,但初始化的方法不正确;在选项C中,赋值的元素个数超过了数组定义的大小,在编译时系统会报错。

  • 第7题:

    设有定义int x; float y; , 则10+x+y值的数据类型是

    A.int

    B.double

    C.float

    D.不确定


    正确答案:C
    解析:由算术运算符组成的表达式中,若含有不同类型的操作数,则系统隐含地将低类型转化为高类型,由低至高的顺序为int→float→double。

  • 第8题:

    设有定义:int X[10],+P=x,i;,若要为数组x读人数据,以下选项正确的是( )。


    正确答案:A
    从scanf(“<格式化字符串>”,<地址表>);可知scanf()的第二个参数是地址,因此,从四个答案中可以判断,只有选项A是P[i]的地址,其他的均是变量本身。敌答案为A选项。

  • 第9题:

    设有定义语句“int a=10,*p=&a;”,则表达式“a十*p”的值是( )

    A.10

    B.20

    C.100

    D.语法出错


    正确答案:B
    在数据定义语句中的“*p=&a”,表示指针变量p已经指向变量a,所以表达式中的“*p”就是变量a,“a+*p”就是“a+a”,所以该表达式的值为20。本题答案应选B。

  • 第10题:

    假设有以下定义:int a=0xAA,b=0x55,则a & b 的值为()

    • A、0x0
    • B、0xff
    • C、0x01
    • D、0xAA

    正确答案:A

  • 第11题:

    单选题
    设有定义:int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a,i;若0≤i≤9,则对a数组元素的引用错误的是(  )。
    A

    a[10]

    B

    *(&a[i])

    C

    p[i]

    D

    a[p-a]


    正确答案: B
    解析:
    长度为n的数组其各个元素的下标应该是从0到n-1,因此,长度为10的数组a,第10个元素为a[9],而不是a[10],答案选择A选项。

  • 第12题:

    单选题
    设有定义:int a,b[10],*c=NULL,*p;则以下语句错误的是(  )。
    A

    p=a;

    B

    p=b;

    C

    p=c;

    D

    p=&b[0];


    正确答案: B
    解析:
    p为指针变量,存放变量的地址。对指针变量赋值,值必须是地址值。a为整型变量不是地址值,不能赋值给p,A项错误,应改为p=&a。数组名b为数组首地址,可以赋值给p,B项正确。c为指针变量,初始化为NULL,与p均为整型指针,可以将其赋值给p,C项正确。&为取地址运算符,&b[0]为数组元素b[0]的地址,可以赋值给p,D项正确。答案选择A选项。

  • 第13题:

    设有数组的定义:int m[]=new int[5],则m.length的值为( )。

    A.4

    B.5

    C.6

    D.10


    正确答案:B
    解析:在Java语言中,数组被当作对象来处理,它包含一个很重要的变量length,用来表示数组的长度。

  • 第14题:

    设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( )。

    A.a[0];

    B.a[A.length-1];

    C.a[3];

    D.int i=1; a[i];


    参考答案:C

  • 第15题:

    设有定义语句:int a[][3]={{0},{1}{2}};,则数组元素a[1][2]的值是【 】。


    正确答案:×
    0 解析:本题考查的是二维数组初始化问题。题中对数组的a[0][0],a[1][0],a[2][0]3个元素分别赋值为0,1,2,其余的元素都自动赋0。所以a[1] [2]的值为0。

  • 第16题:

    设有如下定义: int a=4; 则计算表达式“a+=a-a*a”后的值是( )。

    A.0

    B.-12

    C.-24

    D.-8


    正确答案:D
    解析:a+=a-a*a等价于a=a+a-a*a=4+4-4*4=-8。

  • 第17题:

    下列说法正确的是( )。

    A.定义int a[4]={1,3};,则a[0]=1,a[1]=3,a[3]的值不确定

    B.定义static int a[4];,则元素值不确定

    C.const int x;x=5;表示给常量x赋初值

    D.定义int a[4];,则其元素的值是不确定的


    正确答案:D
    解析:当定义一个static数组时,虽未初始化,但元素值默认为0;对非static的数组,没有赋初值,则其元素中的值为不确定的;若赋初值但数据不够用,则其他元素值初始化为0。

  • 第18题:

    函数定义为Fun(int &A) ,一个变量定义为int i=0;,则下面调用中正确的是( )。

    A.Fun(10)

    B.Fun(10+i)

    C.Fun(&n)

    D.Fun(n)


    正确答案:D
    解析:当函数的形参为引用类型时,调用函数的实参不能是常量、表达式和变量地址,只能是变量的本身。

  • 第19题:

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。A.1SX

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。

    A.1

    B.0

    C.4

    D.3


    正确答案:D

  • 第20题:

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

    若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。

    A.-20

    B.-l0

    C.0

    D.10


    正确答案:B
    表达式x-=x+X可以写成x=x-(x+x),所以X的值为-l0。

  • 第21题:

    设有数组定义:int a[ ] = { 11 , 22 , 33 , 44 , 55 , 66 , 77 , 88 , 99 }; 则执行以下几个语句后的输出结果是 ()、() 、() 。 for ( int i = 0 ; i < a.length ; i ++ ) if ( a[i]%3==0 ) System.out.println(a[i]);


    正确答案:33;66;99

  • 第22题:

    在Java语言中如下定义:int[]a=new int[10];则对a数组元素的正确引用是()。

    • A、a[10]
    • B、a[3+1]
    • C、a(5)
    • D、a[0]

    正确答案:D

  • 第23题:

    填空题
    设有数组定义:int a[ ] = { 11 , 22 , 33 , 44 , 55 , 66 , 77 , 88 , 99 }; 则执行以下几个语句后的输出结果是 ()、() 、() 。 for ( int i = 0 ; i < a.length ; i ++ ) if ( a[i]%3==0 ) System.out.println(a[i]);

    正确答案: 33,66,99
    解析: 暂无解析

  • 第24题:

    单选题
    在Java语言中如下定义:int[]a=new int[10];则对a数组元素的正确引用是()。
    A

    a[10]

    B

    a[3+1]

    C

    a(5)

    D

    a[0]


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