更多“设有定义:intk=0;以下选项的四个表达式值相同的是()A、a=++kB、a=k++C、a=k+=1D、a=k+1”相关问题
  • 第1题:

    设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是( )。

    A.(!a==1)&&(!b==0)

    B.(a<B)&&!c||1

    C.a&&b

    D.a||(b+B)&&(c-A)


    正确答案:A
    解析:本题考查逻辑运算。根据运算符的优先级顺序,选项A的值为“(!2==1)&&(!3==0)=0&&(!3==0)=0”,选项B的值为“(2>3)&&!4||1=0&&!4||1=0&&0||1=0||1=1”。选项C的值为“2&&3=1”。选项D的值为“2||(6)&&(2)=2||1=1”。所以只有选项A的值为0。注意:在进行逻辑与运算时,若“&&”的左边运算结果已经为0,则“&&”右边的表达式将不再进行计算,结果总为0;在进行逻辑或运算时,若“||”的左边运算结果已经为1,则“||”右边的表达式也将不再进行计算,结果总为1。

  • 第2题:

    设有定义:int k=1,m=2;float f=7;则以下选项中错误的表达式是( )。

    A.k=k>=k

    B.-k++

    C.k%int(f)

    D.k>=f>=m


    正确答案:C
    解析:强制类型转换的一般形式为:(类型名)(表达式),而选项C)中没有给类型名加括号,所以选项C)错误。

  • 第3题:

    设有定义:int k=0;,下列选项的4个表达式中与其他3个表达式的值不相同的是( )。

    A.k++

    B.k+=1

    C.#NAME?

    D.k+1


    正确答案:A

  • 第4题:

    设有定义: int a=2,b=3,c=4;, 则以下选项中值为0的表达式是A.(!a==1)&&(!b==0)B.(a

    设有定义: int a=2,b=3,c=4;, 则以下选项中值为0的表达式是

    A.(!a==1)&&(!b==0)

    B.(a<b)&& !c‖1

    C.a && b

    D.all(b+b)&&(c-a)


    正确答案:A
    解析:计算逻辑表达式要注意的问题有三个:一、3个逻辑表达式的优先级从高到低依次是!(逻辑非)、&&(逻辑与)、‖(逻辑或);二、运算符&&或‖的左边运算分量分别为“假”或“真”的时候已经能够得出整个表达式的值,故右边运算分量将被“短路”,即忽略右边的表达式.三、逻辑值能够自动转换为整数值:“真”=1、“假’=0;整数值也能自动转换为逻辑值:0=“假”,非0=“真”。选项A中(!a=1)&&(!b==0)→(12==1)&&(!b==0)→(0==1)&&(!b==0)→0&&(!b==0)→0(&&右边表达式(!b==0)被“短路”);选项B中(ab)&&!c‖1→(23)&&!4‖1→1&&0‖→0‖→1;选项C中a&&b→2&&3→1选项Da‖(b+b)&&(c-a)→2‖(b+b)&&(c,a)→1(‖右边表达式(b+b)&&(c-a)被“短路”)。所以本题选A。

  • 第5题:

    设有定义:int a=0,b=1;,以下表达式中,会产生“短路”现象,致使变量b的值不变的是

    A.a++&&b++

    B.a++||++b

    C.++a&&b++

    D.+a ||++b


    正确答案:A
    运算符“++”放在变量前面时,表示将变量+1,再参与其他操作,a++&&b++时,由于a值是0直接判定与运算结果为0,忽视b++的值。因此b值不发生改变,答案为A选项。

  • 第6题:

    设有定义语句“char s[]="123";”,则表达式“s[3]”的值是 ( )

    A.’1’

    B.’3’

    C.0

    D.语法出错


    正确答案:C
    字符数组s在定义时省略了数组长度,表示给每个数组元素均赋了初值。对本题来说,数组的长度为4;数组元素的值依次为:S[0]为'1'。S[1」为'2'。S[2]为'3'、S[3]为字符率结束标记符'\0',所以“s[3]”的值是'\0'。注意,这个字符的ASCII代码值是整数0,所以本题答案应选C。

  • 第7题:

    设有定义:intx=0,y=1,z=1;则运行表达式:x=y++>z--后,x,y,z的值分别是()。

    • A、1,1,1
    • B、1,2,0
    • C、0,1,1
    • D、0,2,0

    正确答案:D

  • 第8题:

    设有定义:inta=2,b=3,c=4;,则以下选项中值为0的表达式是()

    • A、a%b%c
    • B、a/b/c
    • C、a=b=c
    • D、a,b,c

    正确答案:B

  • 第9题:

    设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()。

    • A、k++
    • B、k+=1
    • C、++k
    • D、k+1

    正确答案:D

  • 第10题:

    设有说明语句:int k=1,m=2;double d=7.3;,以下表达式中错误的是()。

    • A、k>=m=k
    • B、k++
    • C、k%(int)d
    • D、d>m>k

    正确答案:A

  • 第11题:

    单选题
    设有说明语句:inti=2;,以下选项的四个表达式中与其他三个表达式的值不相同的是()
    A

    i++

    B

    i+=1

    C

    ++i

    D

    i+1


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

  • 第12题:

    单选题
    设有定义:int a=0,b=1;以下表达式中,会产生“短路”现象,致使变量b的值不变的是(  )。
    A

    +a‖++b

    B

    a++‖++b

    C

    ++a&&b++

    D

    a++&&b++


    正确答案: D
    解析:
    产生“短路”现象,即逻辑表达式靠后的部分不会被运算。对于逻辑或运算,表达式前半部分运算结果为1时产生“短路”现象,A选项,+a的值是0,需要计算后半部分,B选项,a的值是先使用再自增1,a++值是0,也需要计算后半部分;对于逻辑与运算,表达式前半部分运算结果为0时产生“短路”现象,C选项,a的值是先自增1再传递,传值是1,需要计算后半部分;D项,a的值是先传递再自增1,传值是0,无需要计算后半部分,可忽视b++的值,因此b值不发生改变。答案选择D选项。

  • 第13题:

    设有如下定义语句以下选项中,表达式的值为6的是()

    A.*(k+2)

    B.k+2

    C.*k+2

    D.*k+=2


    正确答案:A
    考察数组和指针的概念,本题中*k指向数组m的首地址。*(k+2)现将指针后移两个元素,即为m[2]的首地址,然后取出m[2]的值6,所以选择A选项。选项B的值是一个地址无意义。选项C的值为4。选项D使得m[0]的值为4。fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。

  • 第14题:

    设有定义:intk=1,m=2;noat f=7;则下列选项中错误的表达式是( )。

    A.k=k>=k

    B.-k++

    C.k%int(f)

    D.k>=f>=m


    正确答案:C
    解析:在C语言中,求余运算符“%”两边的运算对象都应为整型数据,所以需要对变量f进行强制类型转换,正确的写法为k%(int)f。在C语言中,逻辑运算符与赋值运算符、算术运算符、关系运算符之间从高到低的运算优先次序是:!(逻辑“非”)、算术运算符、关系运算符、&&(逻辑“与”)、‖(逻辑“或”)、赋值运算符。根据运算符的优先级与结合性,对于选项A),先计算k>=k的值(为真,即1),再用1对k进行赋值。对于选取项B),先计算k什的值,再对其取负数。对于选项D),先计算k>=f的值(为假,即0),再用0与m进行比较,故最终结果为0。

  • 第15题:

    设有如下定义语句: int m[]={2,4,6,8,10},*k=m; 以下选项中,表达式的值为6的是( )。

    A.*(k+2)

    B.k+2

    C.*k+2

    D.*k+=2


    正确答案:A
    本题考查数组和指针,*k指针是指向rn数组的首地址,所以要使表达武的值为6,只需要指针指向第m[2],所以答案选择A。-

  • 第16题:

    设有定义:intk=0;以下选项的四个表达式中与其他三个表达式的值不相同的是( )。

    A.++k

    B.k+=1

    C.k++

    D.k+1


    正确答案:C
    先使k的值自增l后再使用,k++是先取得k的值再将k的值自增l,所以c选项中表达式的值为0,而其他三个表达式的值均为1,所以选择c。

  • 第17题:

    设有定义“intk=3;”,语法正确且值为true的表达式是( )。

    A、k=3;

    B、k++>3;

    C、k--==3&&k++==3;

    D、k++==3||++k>3;


    正确答案:D

  • 第18题:

    设有定义:intk=3,*p=&k;则表达式*p的值是( )。

    A.1

    B.0

    C.2

    D.3


    正确答案:D

  • 第19题:

    设有定义:intk=1,m=2;floatf=7;,则以下选项中错误的表达式是()

    • A、k=k+=k
    • B、-k++
    • C、k%int(f)
    • D、f=k%m

    正确答案:C

  • 第20题:

    若有定义String tom=""boy"";String hill=""boy"";则表达式(tom==hill)的值为()

    • A、True
    • B、False
    • C、1
    • D、0

    正确答案:A

  • 第21题:

    设有说明语句:inti=2;,以下选项的四个表达式中与其他三个表达式的值不相同的是()

    • A、i++
    • B、i+=1
    • C、++i
    • D、i+1

    正确答案:A

  • 第22题:

    若有以下定义,则能使值为3的表达式是()。 intk=7,x=12;

    • A、x%=(k%=5)
    • B、x%=(k-k%5)
    • C、x%=k-k%5
    • D、(x%=k)-(k%=5)

    正确答案:D

  • 第23题:

    单选题
    设有定义:int a=0,b=1,c=1;以下选项中,表达式值与其他三个不同的是(  )。
    A

    b=a==c

    B

    a=b=c

    C

    a=c==b

    D

    c=a!=c


    正确答案: A
    解析:
    赋值运算结合性为由右向左结合,成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。A项,逻辑表达式a==c不成立,则b=0,表达式值为0;B项,将c赋值给b,b=1,再将b赋给a,a=1,表达式值为1;C项,逻辑表达式c==b成立,则a=1,表达式值为1;D项,逻辑表达式a!=c成立,则c=1,表达式值为1。A项与其他项不同。答案选择A选项。