niusouti.com
参考答案和解析
A
更多“6、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是()。 if(x>y) z=x; x=y; y=z;”相关问题
  • 第1题:

    以下能正确定义整型变量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

  • 第2题:

    以下程序执行后的输出结果是( )。include usingnamespacestd;void try(int,int,int,in

    以下程序执行后的输出结果是( )。 #include <iostream> using namespace std; void try(int,int,int,int); int main ( ) { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = X*X; y = y*y; r = z+x+y; }

    A.18

    B.9

    C.10

    D.不确定


    正确答案:D
    解析:本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。下面是正确解答。根据程序逐步分析:①程序中定义了一个名为try的void型函数,即函数try()没有任何返回值。②而try()函数在主函数中是以一条独立语句的方式被调用的,且主函数最后输出变量r的值。③但在主函数中,并没有对变量r赋值。④在C++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以,虽然在函数try()中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

  • 第3题:

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

    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
    解析:定义函数时,若需要声明形式参数时,则每个形式参数都必须单独声明类型。

  • 第4题:

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

    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编译不能通过。

  • 第5题:

    以下程序执行后的输出结果是include using namespace std;void try(int,int,int,int)

    以下程序执行后的输出结果是 #include <iostream> using namespace std; void try(int,int,int,int); int main () { int x,y,z,r; x =1 ; y = 2; try(x,y,z,r); cout<<r<<endl; return 0; } void try(int x,int y,int z,int r) { z = x+y; x = x*x; y = y*y; r = z+x+y; }

    A.18

    B.9

    C.10

    D.不确定


    正确答案:D
    解析:本题考核函数调用(参数的传递)。本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。以下是正确解答,根据程序逐步分析:程序中定义了一个名为try的void型函数,即函数try没有任何返回值。而try函数在main函数中是以一条独立语句的方式被调用的,且main函数最后输出变量r的值。但在main函数中,并没有对变量r赋值。在c++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以虽然在函数try中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

  • 第6题:

    计算z的值,当x大于等于y时,z=x;否则z=y。下列语句错误的是( )

    A.If x>=y Then z=x:z=y

    B.If x>=y Then z=x Else z=y

    C.z=y:If x>=y Then z=x

    D.If x<y Then z=y Else z=x


    正确答案:A

  • 第7题:

    计算z的值,当x大于y时,z=x;否则z=y。下列语句错误的是

    A.If x>=y Then z=x:z=y

    B.If x>=y Then z=x Else z=y

    C.z=y:If x>=y Then z=x

    D.If x<=y Then z=y Else z=x


    正确答案:A
    解析:选项A中的语句行有两条语句,执行If语句后,执行z=y语句,所以不管x是否大于y,最终x的值都等于y。

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

    以下程序执行后的输出结果是include.using namespace std;void try(int,int,int,int)

    以下程序执行后的输出结果是 #include<iostream>. using namespace std; void try(int,int,int,int); int main() { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = x*x; y = y*y; r = z+x+y; }

    A.18

    B.9

    C.10

    D.不确定


    正确答案:D
    解析:本题考核函数调用(参数的传递)。本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。以下是正确解答,根据程序逐步分析:程序中定义了一个名为try的void型函数,即函数try没有任何返回值。而try函数在main函数中是以一条独立语句的方式被调用的,且main函数最后输出变量r的值。但在main函数中,并没有对变量r赋值。在C++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以虽然在函数try中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

  • 第10题:

    执行以下语句后x,y,z的值是()intx=10,y=20,z=30;if(x>y){z=x;x=y;y=z;}

    • A、x=10,y=20,z=30
    • B、x=20,y=30,z=30
    • C、x=20,y=30,z=10
    • D、x=20,y=30,z=20

    正确答案:A

  • 第11题:

    已知intx=10,y=20,z=30;以下语句,if(x>y)z=x;x=y;y=z;执行后x,y,z的值是()

    • A、x=10,y=20,z=30
    • B、x=20,y=30,z=30
    • C、x=20,y=30,z=10
    • D、x=20,y=30,z=20

    正确答案:B

  • 第12题:

    要交换变量X和Y之值,应使用的语句组是()。

    • A、X=Y;Y=Z;Z=X
    • B、C=X;X=Y;Y=C
    • C、X=Y;Y=X
    • D、Z=Y;Y=X;Y=Z

    正确答案:B

  • 第13题:

    执行下列程序段后,x、y和z的值分别是()。intx=10,y=20,z=30;if(xy)z=x;x=y;y=z;

    A.10,20,30

    B.20,30,30

    C.20,30,10

    D.20,30,20


    正确答案:B

  • 第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
    解析:本题考查函数的定义。选项B中函数形参y没有说明数据类型。

  • 第15题:

    设x、y、z、t均为int型变量,则执行以下语句后,t的值是 ( ) x=y=z=l; t=+ + x | | + + y &&am

    设x、y、z、t均为int型变量,则执行以下语句后,t的值是 ( ) x=y=z=l; t=+ + x | | + + y && + + z;

    A.不定值

    B.2

    C.1

    D.0


    正确答案:C

  • 第16题:

    执行以下语句后的输出结果是______。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题:

    计算z的值,当x大于y时,z=x;否则z=y。下列语句错误的是( )

    A. If x>=y Then z=x : z=y

    B If x>=y Then z=x Else z=y

    C. z=y : If x>=y Then z=x

    D. If x<=y Then z=y Else z=x


    正确答案:D

  • 第19题:

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

    A.不定值

    B.2

    C.l

    D.0


    正确答案:C
    语句序列“x=y=z=l;t=++x||++y&&++z;”使变量x的值为1,变量t是赋一个逻辑表达式的值。在C语言中,由逻辑与和逻辑或构成的逻辑表达式有特别的计算规则,顺序计算各逻辑子表达式,并当一旦能得到逻辑表达式的结果时,就立即结束逻辑表达式的计算,不再计算后继逻辑子表达式。本题的逻辑表达式是两个运算分量的逻辑或,而且左运算分量++X的值为非0,立即得到逻辑或运算的结果为1,并将1赋给变量t,所以变量t的值为1。正确解答为C。

  • 第20题:

    设有定义“int x=8,y,z;”,则执行“y=z=x++,x=y==z;”后,变量x值是( )

    A.0

    B.1

    C.8

    D.9


    正确答案:B
    这是逗号表达式组成的语句,要先计算“y=z=x++”,结果变量y和z的值均为8。注意++是后缀运算符,同时x等于9。再计算“x=y==z”,由于“==”优先于“=”,所以x的值等于“y==z”,而y和z值相等,所以运算结果为1,即x值为1。本题答案应选B。

  • 第21题:

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

    A.2

    B.3

    C.6

    D.5


    正确答案:C

  • 第22题:

    已知:int x= 1,y = 2,z =0,则执行z=x>y?(10+x,10-x):(20+y,20-y)后,z的值为()

    • A、11
    • B、9
    • C、18
    • D、22

    正确答案:C

  • 第23题:

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

    • A、不定值
    • B、2
    • C、1
    • D、0

    正确答案:C

  • 第24题:

    单选题
    已知:int x= 1,y = 2,z =0,则执行z=x>y?(10+x,10-x):(20+y,20-y)后,z的值为()
    A

    11

    B

    9

    C

    18

    D

    22


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