多选题Which two code fragments are most likely to cause a StackOverflowError?()Aint []x = {1,2,3,4,5};for(int y = 0; y < 6; y++)    System.out.println(x[y]);Bstatic int[] x = {7,6,5,4};static { x[1] = 8;x[4] = 3; }Cfor(int y = 10; y < 10; y++)doStuff(y);Dvoi

题目
多选题
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); }


相似考题
更多“多选题Which two code fragments are most likely to cause a StackOverflowError?()Aint []x = {1,2,3,4,5};for(int y = 0; y  6; y++)    System.out.println(x[y]);Bstatic int[] x = {7,6,5,4};static { x[1] = 8;x[4] = 3; }Cfor(int y = 10; y  10; y++)doStuff(y);Dvoid ”相关问题
  • 第1题:

    for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是( )。

    A.0

    B.5

    C.6

    D.无穷


    正确答案:C
    C。【解析】此题是典型的考题。题中X=0,则!x永远为真,对于条件表达式!xy<=5只考虑y<=5,由于每次循环Y都增加1,而且y从0开始到5。所以可知总共循环了6次。

  • 第2题:

    下列程序的输出结果是includeclass Myclass{public : Myclass( int i=0,int j=0){x

    下列程序的输出结果是 #include<iostream.h> class Myclass{ public : Myclass( int i=0,int j=0) {x=i; y=j; } void show( ){cout<<"x="<<x<<" "<"y="<<y<<endl;} void show( )const{cout<<"x="<

    A.x=4,y=3;x=7,y=8

    B.x=3,y=4;x=7,y=8

    C.x=7,y=8;x=4,y=3

    D.x=8,y=7;x=7,y=8


    正确答案:A
    解析:在Myclass类中定义了两个同名函数show,其中一个是常成员函数。在main函数中定义了两个对象myl,my2,其中对象my2是常对象。这两个对象调用成员函数show时,通过对象myl调用的是没有用const修饰的一般成员函数,而通过对象my2调用的是const修饰的常成员函数。

  • 第3题:

    设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。

  • 第4题:

    for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是( )。A.0B.5C.6SXB

    for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是( )。

    A.0

    B.5

    C.6

    D.无穷


    正确答案:C
    此题是典型的考题。题中x=0,则!x永远为真,对于条件表达式!x&&y<=5只考虑y<=5,由于每次循环y都增加1,而且y从0开始到5。所以可知总共循环了6次。

  • 第5题:

    若有以下程序段;includeusing namespace std;int main(){ int a[]={1,4,5}; int *p=&

    若有以下程序段; #include<iostream> using namespace std; int main() { int a[]={1,4,5}; int *p=&a[0],x=6,y,z; for(y=0;y<3;y++) z=((*(p+y)<x) ? *(p+y):x); cout<<z<<end1; return 0; } 程序运行后的输出结果是( )。

    A.1

    B.4

    C.5

    D.2


    正确答案:C
    解析:本题考核指针的运算。①程序首先定义了一整型数组a,并赋初值1,4,5。即a[0],a[1]和a[2]的值分别为1,4和5。程序还定义了一个整型指针p,并初始化它指向数组元素a[0]。②在for循环语句中,赋值语句“z=((*(p+y)x)?*(p+y):x);”可等价为:“z=(aly]x)?a[y]:x”。因为表达式中的“*(p+y)=p[y]=a[y]”。③for语句每循环一次,就给变量z重新赋值一次,z的值其实就是数组和x相比较,将数组a中的最大值赋给z。当y=2后,退出循环,输出结果是5。

  • 第6题:

    下面程序段的输出结果是______。 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。

  • 第7题:

    执行以下程序后,y的值是 ( ) main( ) { int a [ ]={2,4,6,8,10); int y=1,x, *p; p=&a[1]; for(x=0;x<3; x + +) y + =* (p + x); printf("%d\n",y); }

    A.17

    B.18

    C.19

    D.20


    正确答案:C

  • 第8题:

    在下面程序运行后,输出结果为 ______。includevoid count(int x[],int n,int &y

    在下面程序运行后,输出结果为 ______。 #include<iostream.h> void count(int x[],int n,int &y){ int k; y=0; for(k=0:k<n;k++) if(x[k]<0) y++; } void main(){ int b[]={2,1,-8,-3,7,2,4,6,0,-13}; int x; count(b,10,x); cout<<“x”<<x<<end1; }

    A.x=3

    B.x=5

    C.出错

    D.x=0


    正确答案:A

  • 第9题:

    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

  • 第10题:

    class Foo {  public static void main(String [] args) {  int x = 0;  int y = 4;  for(int z=0; z 〈 3; z++, x++) {  if(x 〉 1 & ++y 〈 10) y++;  }  System.out.println(y);  }  }  结果是什么?()  

    • A、6
    • B、7
    • C、8
    • D、10

    正确答案:C

  • 第11题:

    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

  • 第12题:

    单选题
    现有:  class Foo  {  public static void main (String  []  args)  {      int x=O;      int y=4;  for (int  z=0;  z1&++y<10)    y++;    }  System. out .println (y);  }   }  结果是什么?()
    A

    7

    B

    8

    C

    10

    D

    12


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

  • 第13题:

    下列程序的输出结果是includeclass Myclass{public:Myclass(int i=0,int j=0){x=i;

    下列程序的输出结果是 #include<iostream.h> class Myclass{ public:Myclass(int i=0,int j=0) { x=i; y=j; } void show( ) {cout < <"x=" < < x < <" " <"y=" < < y < < endl;} void show( ) const{cout < <"x=" < <" " < <"y=" < < y < < endl;} privated: int x; int y; }; void main( ) { Myclass my1(3,4) ; const my2(7,8) ; my1.show( ) ;my2.show( ) ;}

    A.x=4,y=3;x=7,y=8

    B.x=3,y=4;x=7,y=8

    C.x=7,y=8;x=4,y=3

    D.x=8,y=7;x=7,y=8


    正确答案:A
    解析:在Myclass类中定义了两个同名函数show,其中一个是常成员函数。在main函数中定义了两个对象my1、my2,其中对象my2是常对象。这两个对象调用成员函数show时,通过对象my1调用的是没有用const修饰的一般成员函数,而通过对象my2调用的是const修饰的常成员函数。

  • 第14题:

    for(int x=0,y=0;!x||y<=5;y++,x=!x)语句执行的循环次数是( )。

    A.0

    B.7

    C.6

    D.无数次


    正确答案:B
    解析:因为||(逻辑或)运算符只要有一个为真,则整个表达式为真,由条件“y=5”得知,前6次循环一定会执行。又由x=!x得知,奇数次循环时!x为真,所以第7次循环仍会执行。第8次!x和y=5都为假,循环结束。所以一共循环了7次。

  • 第15题:

    下列程序段的运行结果是______。

    int x=0,y=0;

    while(x<15) y++,x+=++y;

    pfintf("%d,%d",y,x);


    正确答案:820
    8,20 解析:本题考查while循环和++运算符的运用。x=0符合条件x15,则执行y++,x+=++y后,y=1,x=0+2=2后y=2,符合条件继续循环,y=3,x=x+4=6后y=4,再循环y=5,x=x+6=6+6=12后,y=6,继续循环y=7,x=x+8=12+8=20,此时y=8。

  • 第16题:

    有以下程序:include using namespace std;class sample{private: int x; static int

    有以下程序:#include <iostream>using namespace std;class sample{private: int x; static int y;public: sample(int a); static void print(sample s);};sample:: sample(int a){ x=a; y+=x;}void sample:: print(sample s){ cout<<"x="<<s. x<<",y="<<y<<end1;}int sample:: y=0;int main(){ sample s1(10); sample s2(20); sample:: print(s2); return 0;}程序运行后的输出结果是( )。

    A.x=10,y=20

    B.x=20,y=30

    C.x=30,y=20

    D.x=30,y=30


    正确答案:B

  • 第17题:

    有以下程序

    #inclUde<stdio.h>

    main()

    {int x=1。y=0;

    if(!x)y++;

    else if(x==0)

    if(x)y+=2;

    else y+=3; .

    printf(“%d\n”,y);

    }

    程序运行后的输出结果是

    A.3

    B.2

    C.1

    D.0


    正确答案:D
    解析:本题主要考查的知识点为if语句的嵌套.变量x的值(为1。既不满址表达式!x为真.也不满足表达式x==0.故不执行if语句,而直接执行printf函数输出y的值0。 

  • 第18题:

    有以下程序

    #include

    main()

    { int x=1,y=0;

    if(!x) y++;

    else if(x==0)

    if (x) y+=2;

    else y+=3;

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

    }

    程序运行后的输出结果是

    A.3

    B.2

    C.1

    D.0


    正确答案:D

  • 第19题:

    设x和y均为int型变量,则执行下面的循环后,y值为()。include void main(){int x, y;f

    设x和y均为int型变量,则执行下面的循环后,y值为( )。#include <iostream.h>void main(){int x, y;for(y= 1,x= 1 ;y<=50;y++){ if(x>=10) }break;if (x%2==1){ x+=5; continue;} x-=3;} cout<<y;

    A.2

    B.4

    C.6

    D.8


    正确答案:C

  • 第20题:

    执行下列程序段之后,输出的结果为______。 public class ex41 { public static void main(string[] args) { int x=15; byte y=1; x>>=y++; System.out.println(x); } }

    A.3

    B.7

    C.14

    D.10


    正确答案:B

  • 第21题:

    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

  • 第22题:

    现有:  class Foo  {  public static void main (String  []  args)  {      int x=O;      int y=4;  for (int  z=0;  z<3;  Z++;  X++)  {     if(x>1&++y<10)    y++;    }  System. out .println (y);  }   }  结果是什么?()     

    • A、7
    • B、8
    • C、10
    • D、12

    正确答案:B

  • 第23题:

    单选题
    有以下程序:#include main(){ int x=1,y=0; if(!x)y++; else if(x==0) if(x)y+=2;  else y+=3; printf(%d,y);}程序运行后的输出结果是(  )。
    A

    3

    B

    2

    C

    1

    D

    0


    正确答案: D
    解析:
    else子句总是与前面最近的不带else的if相结合,与书写格式无关。本题中的层次关系是:if(!x)与else if(x==0)是一组,位于条件判断的最外层。而if(x)与else是一组,位于else if(x==0)条件的内层。由此可知条件均不成立,所以y未进行任何操作,仍为0。答案选择D选项。