niusouti.com

2、如果有以下的程序代码: int x=300; int y=300; Integer wx=x; Integer wy=y; System.out.println(wx.equals(x)); System.out.println(wy.equals(y)); 以下描述何者正确?A.true trueB.true falseC.false falseD.编译失败

题目

2、如果有以下的程序代码: int x=300; int y=300; Integer wx=x; Integer wy=y; System.out.println(wx.equals(x)); System.out.println(wy.equals(y)); 以下描述何者正确?

A.true true

B.true false

C.false false

D.编译失败


相似考题
参考答案和解析
A
更多“2、如果有以下的程序代码: int x=300; int y=300; Integer wx=x; Integer wy=y; System.out.println(wx.equals(x)); System.out.println(wy.equals(y)); 以下描述何者正确?”相关问题
  • 第1题:

    有以下定义:“int a;long b;double X,Y;”,则以下选项中正确的表达式是( )。 A.a%(int x—y)SXB

    有以下定义:“int a;long b;double X,Y;”,则以下选项中正确的表达式是( )。

    A.a%(int x—y)

    B.a=x!=Y;

    C.(a*y)%b

    D.y=x+y=X


    正确答案:D
    选项A、C,取模运算符(%)用于计算两个整数相除所得的余数,intx-y与a*y的结果是双精度,因此不能使用取模运算符;选项B,a是属于整型变量,x、Y属于双精度变量,因此不能将x赋值给a。

  • 第2题:

    下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int X,y; x=(int)Math.sqrt(5)/2+(int)Math.random*5/2; y=(int)Math.sqrt(3)/2+(int)Math.random*3/2; if(x>v) System.OUt.println("x>y"); elseif(x= =y) System.out.println("x=Y"); else System.out.println("x<y"): } }

    A.x>y

    B.x=Y

    C.x<y

    D.编译错误


    正确答案:A
    A。【解析】本题考查Java语言中if-else分支结构和几个标准函数语句的用法。本题中赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,判断出x与y的大小。Math.sqrt计算一个数的平方根,Math.random输出[0,1)之间的随机数,本题中经过两条赋值语句后,x=1,y=0。进入分支结构后,满足if条件执行相应System.out.println("x>y");操作。

  • 第3题:

    以下程序运行后的输出结果是【】。 include void fun(int x,int y) {x=x+y;y=x-y

    以下程序运行后的输出结果是【 】。

    include<iostream.h>

    void fun(int x,int y)

    { x=x+y;y=x-y;x=x-y;

    cout<< x << "," <<y << " ,";}

    void main( )

    { int x=2,y=3;fun(x,y);

    cout<< x << "," << y << endl;}


    正确答案:3223
    3,2,2,3 解析:main函数和fun函数中的变量x和y都是局部变量,它们各自独立,在本题 fun函数中:接入实参的值传递:x=2,y=3,执行:x=x+y后,x=5,y=3,执行:x=x-y后,x=5,y=3,执行:y=x-y后,x=3,y=2。所以,第一次执行cout显示结果是3和2返回到main函数中,输出main函数中的x和y的值2,3。

  • 第4题:

    下面程序段的输出结果是 public class Test{ public static void main(Stringargs[]){ int x,y; x=(int)Math.sqrt(5)/2+(int)Math.random()*5/2; y=(int)Math.sqrt(3)/2+(ht)Math.random()*3/2; if(x>y) System.out.println(”x>y”); else if(x=y) System.out.println(”x=y”); else System.out.Println(”x<y”); } }

    A.x>y

    B.x=y

    C.x<y

    D.编译错误


    正确答案:A
    解析:本题考查Java语言中if-else分支结构和几个标准函数语句的用法。Java语言的控制结构是考试重点,考生应该多读相关程序。这里重点理解程序中的两个赋值语句,赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,判断出x与y的大小。Math.sqrt计算一个数的平方根,Math.random()输出[0,1)之间的随机数,本题中经过两条赋值语句后,x=1,y=O。进入分支结构后,满足if条件执行相应System.out.println(”x>y”);操作。

  • 第5题:

    主调函数中的两个变量a和b,要求调用函数交换a、b的值,返回交换结果,则以下正确的函数是______。

    A.funa(int*x,int*y) {int*p; *p=*x;*x=*y;*y=*p; }

    B.funb(int x,int y) {int t; t=x;x:y=y=t;}

    C.func(int*x,int*y) {*x=*y;*y=*x;}

    D.fund(int *x,int*y) {*x=*x+*y;*y=*x-*y;*x=*x-*y;}


    正确答案:D
    解析:选项A中指针变量p没有明确的指向,选项B是值传递方式,显然不能改变实参中的值,选项C不能完成交换,实参中的值都变成一样的,只有选项D是正确的。

  • 第6题:

    主调函数中的两个变量a和b,要求调用函数交换a、b值,返回交换结果,则以下正确的函数是______。

    A.funa(int*x,int*y) { int*p; *p=*x;*x=*y;*y=*p; }

    B.funb (int x,int y) {int t;t=x;x=y;y=t;}

    C.func(int *x,int*y) {*X=*y;*y=*x;}

    D.fund(int *x,int *y) {*x=*x+*y;*y=*x-*y;*x=*x-*y;}


    正确答案:D

  • 第7题:

    单击一次窗体之后,下列程序代码的执行结果为______。 Private Sub Command1_ Click() Dim x As Integer, y As Integer, z As Integer x = 1: y = 2: z = 3 Call fun1 (x, y, z) Print x; y; z Call fun2(x, y, z) Print x; y; z End Sub Private Sub fun1(x As Integer, y As Integer, z As Integer) x = 10 * z y=z*z+ x z=x+ y+ z End Sub Private Sub fun2 (ByVal x As Integer, ByVal y As Integer, ByVal z As Integer) x=10*z y=z*z+ x z=x+ y +z End Sub

    A.1 2 3 30 39 72

    B.1 2 3 1 2 3

    C.30 39 72 1 2 3

    D.30 39 72 30 39 72


    正确答案:D

  • 第8题:

    以下程序运行后的输出结果是void fun(int x,int y){ x=x+y;y=x-y;x=x-y; printf("%d,%d,",x,y);}main(){ int x=2,y=3; fun(x,y); printf("%d,%d\n",x,y);}


    正确答案:3,2,2,3
    被调用函数fun()实现的功能是交换变量x和y的值并打印,由于该函数无返回值,所以在主函数中打印出的x和y的值仍然为2,3。

  • 第9题:

    下列程序的输出结果是______。 int x=3; int y=10; System.out.println(y%x);

    A.0

    B.1

    C.2

    D.1.0


    正确答案:B
    解析: 对于二元算术运算,如果两个操作数均为int型,则表达式的结果也是int型。本题中10除以3取模后结果为1,所以只有选项B是正确的。

  • 第10题:

    以下程序执行后的输出结果是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,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

  • 第11题:

    Less Test{    public static void main(String[] args){   for(int x=0;x<7;++x){  int y=2;   x=++y;   }   System.out.println(“y=”+y);   }   }   结果为:()  

    • A、y=5
    • B、y=6
    • C、 y=7
    • D、y=8
    • E、编译失败
    • F、运行时异常被抛出

    正确答案:E

  • 第12题:

    Which two code fragments are most likely to cause a StackOverflowError?()

    • A、int []x = {1,2,3,4,5};for(int y = 0; y < 6; y++)    System.out.println(x[y]);
    • B、static int[] x = {7,6,5,4};static { x[1] = 8;x[4] = 3; }
    • C、for(int y = 10; y < 10; y++)doStuff(y);
    • D、void doOne(int x) { doTwo(x); }void doTwo(int y) { doThree(y); }void doThree(int z) { doTwo(z); }
    • E、for(int x = 0; x < 1000000000; x++) doStuff(x);
    • F、void counter(int i) { counter(++i); }

    正确答案:D,F

  • 第13题:

    有以下程序:includemain(){int x,y; printf("Enter an integer(x):&quo

    有以下程序:#includemain(){int x,y; printf("Enter an integer(x):");scanf("%d",&x);if(x++<0) y=-1;else if(x==0) y=0;else y=1; printf("%d",y);}现从键盘上输入-1,则程序的输出是( )

    A.0

    B.-1

    C.1

    D.不确定的值


    正确答案:B 

  • 第14题:

    有以下程序

    void f( int y, int *x)

    { y=y+*x; *X=*X+y; }

    main()

    { int x=2,y=4;

    f(y,&x);

    printf("%d %d\n",x,y);

    }

    执行后输出结果是______。


    正确答案:8 4
    8 4 解析:本题考核的知识点是函数的调用、值传递和地址传递的区别。“值传递”指实参将值传递给形参后,实参与形参再无联系。也就是说对行参的改变将不影响实参;地址传递是指地址或数组名作为形参时的参数传递,这种情况下对形参的改变将对实参产生影响.函数 f(Y*x)的作用是让y的值加上指针x所指向变量的值,让指针x所指向变量的值加上y的值。由于形参y是传值的,形参x是传地址的,故调用该函数后,作为实参的y的值将不改变,而实参x的值将改变,故最后输出的y的值为4,而x的值为8。

  • 第15题:

    单击按钮时,以下程序运行后的输出结果是 Private Sub proc1(x As Integer,y As Integer,z As Integer) x=3*z y=2*z z=x+y End Sub Private Sub Command1_Click() Dim x As Integer,y As Integer,Z As Integer x=1:y=2:z=3 Call proc1(x,x,z) Print x;x;z Call proc1(x,y,y) Print x;y;y End Sub

    A.6 6 12 `

    B.9 5 10 6101051010

    C.9 6 12

    D.9 10 10 910155410


    正确答案:A
    解析:从整体上看,可得主调过程将两次调用过程Proc1后,实参的值将随形参变化而变化,现在分析一下这两次调用实参和形参是怎么变化的。第一次调用被调过程proc1,主调过程把实参x,x,z的地址分别传给形参x,y,z,此时形参x,y,z值分别为1,1,3,执行语句x=3*z后,形参x值变为9,此时相对应的实参x也变为9,执行语句y=2*z后,形参y值变为6,则相对应的实参x值变为6。执行x=x+y后,形参z值应为12,当然这次调用后,程序代码输出的数值为6,6,12;第二次调用被调过程proc1,主调过程把实参x,x,z的地址分别传给形参x,y,z。我们应注意一下,此时实参x的值为6而不是1,所以此时形参x,y,z值分别为6,2和2,执行语句x=3*z后,形参x值为6,相对实参x值也相应的变为6。执行语句y=2*z后,形参y值变为4,相应的实参y值也变为4,执行z=x+y后,形参z值变为10,相应的实参y的值变为10,而形参y和x的地址相同,最后它们值都应为10,所以此次调用后,程序代码将输出的数值为6,10和10。

  • 第16题:

    单击命令按钮时,下列程序代码的执行结果为 ( ) Function FirProc(x As Integer, y As Integer, z As Integer) FirProc=2*x+y+3*z End Function Function SecProc(x As Integer, y As Integer, z As Integer) SecProc=FirProc(z, x, y)+x End Function Private Sub Commandl Click() Dim a As Integer, b As Integer, c As Integer a=2 :b=3 :c=4 Print SecProc(c, b,A)End Sub

    A.21

    B.19

    C.17

    D.34


    正确答案:A
    解析:执行语句Print SecProc (c,b,a)时,调用SecProc函数,此时将实参c, b,a的值对应传递给形参x,y,z。得SecProc =FirProc(a,c,b)+c,此时又需要调用Fir- Proc函数将a,c,b的值传递给对应形参x,y, z。在FirProc函数中执行语句FirProc=2*x +y+3*z即执行语句FirProe=2*a+c+3 *b其结果值为2*2+4+3*3即17。故 FirProe(a,c,b)的返回值为17。再与c相加即得SecProc函数的返回值结果21。选项A正确。

  • 第17题:

    下列程序段执行后的输出结果为( )。 int x=3; int y=10; System.out.println(y%x);

    A.0

    B.1

    C.2

    D.3


    正确答案:B
    解析:此题考查%运算符的使用,%运算符的功能是求余运算,10除以3的余数为1,故选B。

  • 第18题:

    设x和y均为int型变量,则执行下面的循环后,y值为( )。 public class Sun { public static void main(String args[ ]) { int x, y; for (y=1, x=1; y<=50; y++) { if(x>=10) break; if (x%2==1) { x+=5; continue; } x-=3; } System.out.println (y); } }

    A.2

    B.4

    C.6

    D.8


    正确答案:C
    解析:该题考查for循环和if条件语句的嵌套应用。当y=1,x=1时,不满足第1个if语句向下继续执行第2个if语句,x=6,继续执行for循环:当y=2,x=6时,不满足第1个和第2个if语句,x=3,继续执行for循环;当y=3,x=3时,不满足第1个if语句向下继续执行第2个if语句,x=8,继续执行for循环;一直执行下去,直到y=6,x=12是满足第1个 if语句退出for循环。故本题答案是C。

  • 第19题:

    单击一次窗体之后,下列程序代码的执行结果为______。 Private Sub Command1_ Click() Dim a As Integer, b As Integer, c As Integer a = 1: b = 2: c = 4 Print Value(a, b,C)End Sub Function Num(x As Integer, y As Integer, z As Integer) Num = x * x + y * y + z * z End Function Function Value(x As Integer, y As Integer, z As Integer) Value = Num(x, y, z) + 2 * x End Function

    A.21

    B.23

    C.19

    D.35


    正确答案:B

  • 第20题:

    下面程序段的输出结果是( )。 publicclassTest{ publicstaticvoidmain(Stringargs[]){ intx,y; x=(int)Math.sqrt(5)/2+(int)Math.random()*5/2; Y=(int)Math.sqrt(3)/2+(int)Math.random()*3/2; if(x>y) System.out.println9"x>y"); elseif(x==y) System.out.println("x=y"); else System.out.println("x<y"); } }

    A.x>y

    B.x=y

    C.x<y

    D.编译错误


    正确答案:A
    解析: 本题考查Java语言中if-else分支结构和几个标准函数语句的用法。本题中赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,判断出x与y的大小。Math.sqrt计算一个数的平方根,Math.random()输出[0,1]之间的随机数,本题中经过两条赋值语句后,x=1,y=0。进入分支结构后,满足if条件执行相应System.out.pfintM("x>y");操作。

  • 第21题:

    下面程序段的输出结果是______。 public class Test{ public static void main(String args[ ]){ int x,y; x=(int)Math.sqrt(5/2)+(int)Math.random( )*5/2; y=(int)Math.sqrt(3/2)+(int)Math.random( )*3/2; if(x>y) System.out.println("x>y"); else if(x==y) System.out.println("x=y"); else System.out.println("x<y"); } }

    A.x>y

    B.x=y

    C.x<y

    D.编译错误


    正确答案:A
    解析: 本程序中两个赋值语句右边的表达式分别求两个标准函数的值,再进行整除,判断 x和y的大小。Math.sqrt( )方法计算一个数的平方根,Math.random( )方法输出[1,0]之间的随机数,本题中经过两条赋值语句,x=1,y=0。进入分支结构后,满足if条件执行相应的System.out.println("x>y")操作。所以输出结果应该是选项A。

  • 第22题:

    class DemoApp{  public static void main(String[] args){  int x = 5; int y = ++x + x++; S ystem.out.println(“y=”+y+”,x=”+x);  }  }  以上程序运行后的输出结果是哪项?() 

    • A、y=10,x=5
    • B、y=11,x=6
    • C、y=12,x=7
    • D、y=11,x=7

    正确答案:C

  • 第23题:

    以下正确的函数定义形式是()。

    • A、double FUN(int x;int y)
    • B、double FUN(int x,int y)
    • C、double FUN(int x,int y);
    • D、double FUN(int x,y)

    正确答案:B

  • 第24题:

    多选题
    Which two code fragments are most likely to cause a StackOverflowError?()
    A

    int []x = {1,2,3,4,5};for(int y = 0; y < 6; y++)    System.out.println(x[y]);

    B

    static int[] x = {7,6,5,4};static { x[1] = 8;x[4] = 3; }

    C

    for(int y = 10; y < 10; y++)doStuff(y);

    D

    void doOne(int x) { doTwo(x); }void doTwo(int y) { doThree(y); }void doThree(int z) { doTwo(z); }

    E

    for(int x = 0; x < 1000000000; x++) doStuff(x);

    F

    void counter(int i) { counter(++i); }


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