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

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

若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。

A.4

B.8

C.0

D.2


相似考题
参考答案和解析
正确答案:B
2的二进制数为010,移两位后的二进制数为01000,转成十制数为8,(3||2)为真即1,8/ 1=8,所以结果为8。
更多“若有定义语句int b=2;,则表达式(b 若有定义语句int b=2;,则表达式(bA.4B.8C.0D.2”相关问题
  • 第1题:

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


    正确答案:

  • 第2题:

    设有定义语句:int a=12;,则表达式a*=2+3的运算结果是______。


    正确答案:60
    60 解析:本题考核C++运算符运算优先级和结合性。表达式"a*=2+3,"先计算“2+3”得到5,然后计算a*=5,得到a的值为60。

  • 第3题:

    若有定义语句:“int a=10;double b=3.14;”,则表达式A+a+b值的类型是( )。

    A.char

    B.int

    C.double

    D.float


    正确答案:C
    如果是字符数据和整数运算将先转换成整型再进行运算,当整型和浮点数进行运算,为了提高精度将会转化为双精度类型然后进行运算,所以此题结构的数值类型为double类型。

  • 第4题:

    若有定义:int x=1,y=2;float a=3.7,b=2.1;则(x+y)%2+(int)a/(int)b表达式的值为( )。


    正确答案:2
    2 解析:本题考查表达式的运算。因为x=1,y=2,所以表达式(x+y)%2=3%2=1,(int)a/(int)b=(int)}(3/2)=1,因此整个表达式的结果为(x+y)%2+(int)a/(int)b=1+1=2。

  • 第5题:

    若有定义“int a=5,b=7;”,则表达式a%-(b%2) 运算后,a的值为( )。A.0B.1C.11S

    若有定义“int a=5,b=7;”,则表达式a%-(b%2) 运算后,a的值为( )。

    A.0

    B.1

    C.11

    D.3


    正确答案:A
    本题考查“%”运算符的使用。运算符“%”是整数除法的余数。本题中表达式a%=(b%2)等价于a=a%(b%2)=5%(7%2)=5%1=0。

  • 第6题:

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

    A.0

    B.-20

    C.-10

    D.10


    正确答案:C
    算术运算符+的优先级高于-=.且-=的结合方向为自右向左,所以表达式x-=x+x可以表示成;=x-(x+x)=10-(10+10)=-10,选择C。

  • 第7题:

    若有定义语句:“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。

  • 第8题:

    若有定义语句“int x,*p=&x,**ppx=&px;”,则下列表达式中错误的是( )

    A.x=*px

    B.x=**ppx

    C.px=&ppx

    D.*ppx=&x


    正确答案:C
    分析备选答案A:“*px”,就是x,所以该表达式为“x=x”,是正确的,不符合题意分析备选答案B:"**ppx",就是"*(*ppx)=*px=x",所以该表达式为"X=X",是正确的,不符合题意.分析备选答案C:px是一级指针变量,其中只能存放变量或数组元素的地址,不能存放其他一级指针变量或二级指针变量的地址,而"&ppx"是二级指针变量ppx的地址,所以该表达式是错误的,本题答案应选C.至于备选答案D:"*ppx"就是px,将变量x的地址赋予px,当然是正确的。

  • 第9题:

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


    正确答案:2
    2 解析:本题考查的知识点是:条件运算符。条件运算是C++中唯一的三目运算,与其对应的运算符?:称为条件运算符。条件运算符的使用格式为:
    表达式1>?表达式2>:表达式3>
    当计算有条件运算符构成的表达式时,首先计算表达式1>,若其值非0,则计算出 表达式2>的值,并用这个值作为整个表达式的值;若表达式1>的值为0,则计算出表达式3>的值,并用这个值作为整个表达式的值。题目中,ab的结果为假(即 0),所以整个表达式的值为b的值2。

  • 第10题:

    单选题
    若有定义语句“int i=2,j=3;”,则表达式i/j的结果是(  )。
    A

    0

    B

    0.7

    C

    0.66667

    D

    0.66666667


    正确答案: C
    解析:
    变量i、j是整型变量,相除之后商为整型,向下取整,结果为0。

  • 第11题:

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

    正确答案: A
    解析:
    D项正确,标号可以是整型表达式。A项错误,case是关键字,与其后面的常量表达式合称case语句标号。常量表达式的类型必须与swicth后圆括号中的表达式类型相同,各case语句标号的值应该互不相同。c是变量,不能作为表达式放在case后面;B项错误,switch后面不应该有分号;C项错误,switch参数值类型必须是这几种类型之一:int,long,short,byte,char。答案选择D选项。

  • 第12题:

    单选题
    若有定义语句: int x=10; 则表达式x-=x+x的值为(  )。
    A

    -20

    B

    -10

    C

    0

    D

    10


    正确答案: A
    解析:
    单目加运算符优先级高于赋值运算符,所以先做x+x结果为20,再做x-20,结果为-10,然后赋值给x。所以答案选择B选项。

  • 第13题:

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


    正确答案:2
    2

  • 第14题:

    若有定义语句“inti=2,j=3;”,则表达式i/j的结果是( )。 A.0B.0.7C.0.66667S

    若有定义语句“inti=2,j=3;”,则表达式i/j的结果是( )。

    A.0

    B.0.7

    C.0.66667

    D.0.66666667


    正确答案:A
    A。【解析】整数相除为整数,所以结果为0。

  • 第15题:

    若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。

    A.4

    B.8

    C.0

    D.2


    正确答案:B
    2的二进制数为010,移两位后的二进制数为01000,转成十制数为8,(3||2)为真即1,8/1=8,所以结果为8。

  • 第16题:

    若有定义语句:int X=10;,则表达式-x =x+X的值为

    A.-20

    B.-10

    C.0

    D.10


    正确答案:B
    解析:x-=x+x可化为:x=x-(x+x),由于x初始值为10,所以计算后,x=10-20=-10,因此选B)。

  • 第17题:

    若有定义:int a=5,b=2,c=1;则表达式a-b

    A.0

    B.1

    C.3

    D.-1


    参考答案:A

  • 第18题:

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


    正确答案:A
    B选项中switch((int)x);语句中不应该有最后的分号。switch(exprl),中的exprl不能用浮点类型或10n9类型,也不能为一个字符串,所以c错误。ca”后面常量表达式的类型必须与switch后面表达式的类型一致,所以D错误。

  • 第19题:

    若有定义

    则a的定义与下面哪个语句等价

    A.int(*A.[10];

    B.int}g[10];

    C.int*a;

    D.int a[10];


    正确答案:B
    本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,其中本题中int*用T来代替,所以定义Ta[10];就相当于是int*a[10];选项B正确。

  • 第20题:

    若有定义语句:int x=3,y=2,z=1;,表达式:2*=(x>y?++x:y+)的值是

    A.4

    B.0

    C.1

    D.3


    正确答案:A
    解析:本题考查了条件表达式和自加运算。首先判断x>y这个关系表达式的值,通过计算知其值为真,所以关系表达式的值为++x(为4),最后执行z*=4,z的值为4。

  • 第21题:

    试题14

    若有定义语句:int a=10; double b=3.14; , 则表达式‘A’+a +b值的类型是()

    A.char

    B.int

    C.double

    D.float


    正确答案:C
    试题14分析
    数据自动转换时,按照数据长度增加的方向进行转换,以保证精度不降低。
    试题14答案
    C

  • 第22题:

    单选题
    若有定义语句 int b=2; 则表达式(b<<2)/(3‖b)的值是(  )。
    A

    4

    B

    8

    C

    0

    D

    2


    正确答案: B
    解析:
    b=2,转为二进制即为0010,首先将b左移两位,变成1000,即十进制的8,3‖b的值为真即为1,最后计算8/1=8。答案选择B选项。

  • 第23题:

    单选题
    若有定义语句:int a=10;double b=3.14;,则表达式'A'+a+b值的类型是(  )。
    A

    char

    B

    int

    C

    double

    D

    float


    正确答案: D
    解析:
    在多目运算符相关联的运算中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一致后,再进行运算,转换的规则是由“低到高”。'A'是字符型,a是整型,b是double型。字符型数据占1个字节,整型占2个字节,doub1e型占8个字节,故三者相加后为double型,答案选择C选项。