niusouti.com
参考答案和解析
B
更多“若有定义:int x,y,z; 语句 x=(y=z=3,++y,z+=y); 运行后,x的值为()。”相关问题
  • 第1题:

    下面结构体的定义语句中,错误的是( )。 A.struct ord{int x;int Y;int Z;};struet ord a;SXB

    下面结构体的定义语句中,错误的是( )。

    A.struct ord{int x;int Y;int Z;};struet ord a;

    B.struct ord{int x;int y;int Z;}struct ord a;

    C.struct ord{int X;int Y;int Z;}a;

    D.struct{int X;int y;int Z;}a;


    正确答案:B
    结构体定义的类型说明的一般形式为:struct结构体标识名{类型名1结构成员名表l;类型名2结构成员名表2;···};。注意:①结构体说明同样要以分号结尾;②紧跟在结构体类型说明之后进行定义;③在说明一个无名结构体类型的同时,直接进行定义;④先说明结构体类型,再单独进行变量定义等。所以B选项错误。

  • 第2题:

    下列函数定义中,会出现编译错误的是 ______。

    A.max(int x,int y,int *z) { *z=x>y? x:y;}

    B.int max(int x,y) {int z; z=x>y? x;y; return z; }

    C.max(int x,int y) { int z; z=x>y? x:y; return(z); }

    D.int max(int x,int y) { return(x>y?x:y);}


    正确答案:B
    解析:本题考查函数的定义。选项B中函数形参y没有说明数据类型。

  • 第3题:

    下列函数定义中,会出现编译错误的是

    A.max(int x,int y,int*z) {*z=x>y?xy;}

    B.int max(int x,y) {int z; z=x>y?xy; return z; }

    C.max(int x,int y) {int z; z=x>y?xy;return(z); }

    D.int max(int x,int y) { return(x>y?xy);}


    正确答案:B
    解析:本题考核的知识点是函数的定义方法。选项B中在说明形参时,省略了第二个参数的类型,故选项B编译不能通过。

  • 第4题:

    若有如下定义: int x=6,y=3,z=2; 则表达式x=y||y<z&&z==z的值是( )。

    A.0

    B.1

    C.4

    D.6


    正确答案:B
    解析:优先级高于==高于&&高于||高于=。首先计算表达式yz的值,yz为假,表达式的值为0,则逻辑表达式yz&&z= =z的值也为0,||左侧y的值为非零值3,所以表达式的值为1,将1赋值给x,赋值表达式的值是1。

  • 第5题:

    若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为()

    A.123412312

    B.12341234123412341231231231212

    C.1234+1234+1234

    D.1234+123+12


    参考答案:D

  • 第6题:

    若有定义:intx,y,z;语句x=(y=z=3,++y,z+=y);运行后x的值为()。

    A.6

    B.7

    C.8

    D.3


    正确答案:B

  • 第7题:

    若有定义语句:“int x=12,y=8,z;”,在其后执行语句“z=0.9+x/y;”,则2的值为( )。

    A.1.9

    B.1

    C.2

    D.2.4


    正确答案:A
    此题考查除法运算,根据先乘除后加减,有括号先算括号的原则,先计算x/y,即l2/8=1,所以z=0.9+1=1.9。

  • 第8题:

    设x、y、z均为int型变量,则执行以下语句后,x、y, z的值为( ) X=1; y=0; Z=2; y++&&++Z ||++ X;

    A.2、l、3

    B.2、0、3

    C.2、l、3

    D.2、1、2


    正确答案:D
    语句序列“x=l;y=0;z=2;y++&&++z||++x;”先使变量x的值为1,变量y的值为0,变量Z的值为2。由逻辑与和逻辑或构成的逻辑表达式的特别计算规则,顺序计算各逻辑子表达式,并当一旦能得到逻辑子表达式的结果时,就立即结束逻辑子表达式的计算,不再计算该逻辑子表达式。计算y++因y的值为0,使y++&&++z的结果为0,立即去计算++X,这次计算使变量y的值变成1,而变量Z的值本改变。接着计算++X,使X的值变为2。所以经上述语句执行后,X、y、Z的值依次为2、1、Z。确解答为D。

  • 第9题:

    已有定义语句:int x=3,y=0,z=0;,则值为0的表达式是( )

    A.x&&y

    B.x||z

    C.x| |z+2&&y-z

    D.!((x<y)&&!z| |y)


    正确答案:A

  • 第10题:

    经过以下语句定义后,表达式z+=x>y?++x:++y的值是______。int x=1,y=2,z=3;

    A.2

    B.3

    C.6

    D.5


    正确答案:C

  • 第11题:

    经过以下语句定义后,表达式z+=x>y?++x:++y的值为(). int x=1,y=2,z=3;

    • A、2
    • B、3
    • C、6
    • D、5

    正确答案:C

  • 第12题:

    填空题
    若有int x=3,y=4,z=5; ,则表达式 !(x+y)+z-1 && y+z/2的值是()

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

  • 第13题:

    以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。

    A.int x=y=z=5;

    B.int x,y,z=5;

    C.int x=5,y=5,z=5;

    D.x=5,y=5,z=5;"


    参考答案C

  • 第14题:

    下列函数定义中,会出现编译错误的是

    A.max(int x,int y,int *z) { *z=x>y ? x:y; }

    B.int max(int x,y) { int z; z=x>y ? x:y; return z; }

    C.max(int x,int y) { int z; z=x>y?x:y; return(z); }

    D.int max(int x,int y) { return(x>y?x:y); }


    正确答案:B
    解析:定义函数时,若需要声明形式参数时,则每个形式参数都必须单独声明类型。

  • 第15题:

    若有定义“int x=10,y=3,z;”,则语句“cout<<(z=(x%y,x/y));”的输出结果是 _______。

    A.1

    B.0

    C.4

    D.3


    正确答案:D

  • 第16题:

    设有如下定义: 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

  • 第17题:

    下列函数定义不正确的是 ( )

    A.int max { int x y,z; z=x>y? x: y }

    B.int max(x,y) int x,y; { int z; z=x>y? x:y; return(z) }

    C.int max(x,y) { int x,y z; z=x>y? x: y; return(z); }

    D.int max( ) {}


    正确答案:C

  • 第18题:

    若有定义语句:int x=12,y=8,z;,在其后执行语句z=0.9+x/y;,则z的值为

    A.1.9

    B.1

    C.2

    D.2.4


    正确答案:B
    解析:x的值为12,y的值为8,那么x/y的值就是1,因为z的类型是int,所以0.9+1变成int的值就是1,所以选择B)。

  • 第19题:

    若有说明语句:int x=3,y=4,z=5;,则下面的表达式中,值为0的是______。

    A.x&&y

    B.x<=y

    C.x||++y&&y-z

    D.!(x<y&&!z||1)


    正确答案:D
    解析:x&&y值为1,x=y值为1,x||++y&&y-z值为1,!(xy&&!z||1=值为0。

  • 第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题:

    试题15

    若有定义语句:int x=12,y=8, z; , 在其后执行语句z=0.9+x/y; , 则z 的值为()

    A.1.9

    B.1

    C.2

    D.2.4


    正确答案:B
    试题15分析
    x/y的结果为1,右边表达式的值为1.9,因为z为整型,所以舍去小数部分。
    试题15答案
    B

  • 第22题:

    若有int x=3,y=4,z=5; ,则表达式 !(x+y)+z-1 && y+z/2的值是()


    正确答案:1

  • 第23题:

    假设有条件 int x=1,y=2,z=3;则表达式z+=x>y?++x:++y的值是()


    正确答案:6

  • 第24题:

    单选题
    若有定义语句:int x=12,y=8,z;在其后执行语句:z=0.9+x/y;则z的值为(  )。
    A

    1.9

    B

    1

    C

    2

    D

    2.4


    正确答案: B
    解析:
    由于x,y,z都是整型数据,所以x除以y的值为整型数值1,之后1和0.9相加得到1.9,再转换为整型数1赋给整型变量z。答案选择B选项。