下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int a,b; for(a=1,b=1;a<=100;a++){ if(b>=10)break; if(b%2= =1){ b+=2: continue; } } System.OUt.println(a); } }A.5B.6C.7D.101

题目

下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int a,b; for(a=1,b=1;a<=100;a++){ if(b>=10)break; if(b%2= =1){ b+=2: continue; } } System.OUt.println(a); } }

A.5

B.6

C.7

D.101


相似考题
更多“下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int a,b; for(a=1,b=1;a=100;a++){ if(b=10)break; if(b%2= =1){ b+=2: continue; } } System.OUt.println(a); } }A.5B.6C.7D.101”相关问题
  • 第1题:

    下面程序段的输出结果是( )。 public class Test { public static void main ( String[] args) { int result=0; for ( int i=1;i<=5;i++) { if ( i%2==0 ) continue; result + =i; } System. out. println ("result is " + result ); } }

    A.result is 7

    B.result is 8

    C.result is 9

    D.result is 10


    正确答案:C
    解析:continue语句跳过循环体中下面尚未执行的语句,回到循环体的开始继续下轮循环。所以题目中程序实现的是求1到5的所有奇数的和,即1+3+5=9,所以选C。

  • 第2题:

    下面程序片段的运行结果是( )。 public class Test { public static void main (String args[]) { int a=10,b=4,c=20,d=6; System.out.println (a++ *b+c* --d); } }

    A.144

    B.160

    C.140

    D.164


    正确答案:C
    解析:本题输出的值为a++*b+c*--d,相当于(a++)*b+c*(--D),由于a++中,++在变量a之后,先取值再自增,a++表达式的值为10,(a++)。b的值为40;又由于--d中,--在变量d之前,所以先自减再取值,--d的值为5,c*(--D)的值为100,所以(a++),b+c。(--D)的值为140。

  • 第3题:

    下面程序的输出结果是什么? class C1{ static int j=0; public void method(int a){ j++; } } class Test extends C1{ public int method(){ return j++; } public void result(){ method(j); System.out.println(j+method()); } public static void main(String args[]){ new Te

    A.0

    B.1

    C.2

    D.3


    正确答案:C

  • 第4题:

    下面程序段的输出结果是( )。 public class Test { public static void main (String[] args) { int n=10; do { System.out.println("n is"+n); }while(--n>10); } }

    A.n is 8

    B.没有输出

    C.n is 10

    D.n is 9


    正确答案:C
    解析:do-while循环至少执行一次,输出n is 10。判断结束条件时,先计算--n,n=9,才进行比较运算,所以条件为假,退出循环。因此选C。

  • 第5题:

    下面程序段的输出结果是 class Base { int i; Base() { add(1); } void add(int v) { i+=v; } void print() { System.out.println(i); } } class Extension extends Base { Extension() { add(2); } void add(int v) { i+=v*2; } } public class Test { public static void main(String args[]) { bogo(new Extension()); } static void bogo(Baseb){ b.add(8); b.print(); } }

    A.9

    B.18

    C.20

    D.22


    正确答案:D
    解析:本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是Extension类的实例,在运行时,从main()函数进入程序,所有调用add()方法的过程将始终和Extension类的add()方法动态绑定。初始值:i=0;创建实例new Extension();先调用父类的默认构造函数Base(),并在父类的默认构造函数中执行add(1),i=0+1×2,所以i=2,再调用子类的默认构造函数Extension(),子类的默认构造函数中执行add(2),i=2+2×2,所以i=6;执行add(8);i=6+8×2,因此,最终i=22,正确答案为选项D。

  • 第6题:

    下面代码的运行结果是 public class Test{ public static void main(String args[]){ for(int i=0; i<3;i++){ if(i<2) continue; System.out.println(i); } } }

    A.0

    B.1

    C.2

    D.3


    正确答案:C
    解析:本题考查简单的Java控制语句。题目非常简单,但还是应该细心。这里应注意continue语句。continue语句是跳过循环体中下面尚未执行的语句,回到循环体的开始继续下一轮的循环。当然,在下一轮循环开始前,要先进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件的判断前,还要先执行迭代语句。题目所给程序中,当i=0和i=1时,都会执行continue语句,而不会执行System.out.println(i)语句,只有当i=2时才执行System.out.println(i)语句,输出为2,选项C正确。

  • 第7题:

    执行如下程序: public class Test { public static void main (String args[]) { int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++; } System.out.println("a=" +a ",b=" +b); } } 该程序的输出结果是( )。

    A.a=2,b=1

    B.a=1,b=1

    C.a=1,b=0

    D.a=2,b=2


    正确答案:A
    解析:本题关键是要搞清楚该程序执行了哪几条语句。由于x的值等于1,所以switch结构中,程序从case1后面的语句开始执行,又因为case1后面的语句没有以break结束,所以程序要继续往下执行case 2后面的语句。所以,该程序共执行了这3条语句:a++;a++;b++;因此,变量a和b最后的值应该为2和1。

  • 第8题:

    下面程序段的输出结果是( )。 class Base { int i; Base { add(1); } void add(int v) { i+=v: } void print { System.out.println(i); } } class Extension extends Base { Extension { add(2); } void add(int v) { i+=v*2: } } public class Test { public static void main(String args[]) { bogo(new Extension); } static void bogo(Base b) { add(8); print; } }

    A.9

    B.18

    C.20

    D.22


    正确答案:D
    D。【解析】本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是Extension类的实例,在运行时,从main函数进入程序,所有调用add方法的过程将始终和Extension类的add方法动态绑定。初始值:i=0;创建实例newExtension;先调用父类的默认构造函数Base,并在父类的默认构造函数中执行add(1),i=O+1×2,所以i=2,再调用子类的默认构造函数Extension,子类的默认构造函数中执行add(2),i-2+2×2,所以i=6;执行add(8);i=6+8×2,因此,最终i=22,正确答案为选项D。

  • 第9题:

    下面程序段的输出结果是 class Base { int i; Base() { add(1); } void add(int v) { i+=v; } void print() { System.out.println(i); } } class Extension extends Base { Extension() { add(2); } void add(int v) { i+=*2; } } public class Test { public static void main(String args[]) { bogo(new Extension()); } static void bogo(Base b) { b.add(8); b.print(); } }

    A.9

    B.18

    C.20

    D.22


    正确答案:D
    解析:本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是Extension类的实例,在运行时,从main()函数进入程序,所有调用add()方法的过程将始终和Extension类的add()方法动态绑定。初始值:i=O;创建实例newExtension();先调用父类的默认构造函数Base(),并在父类的默认构造函数中执行add(1),i=0+1x2,所以i=2,再调用子类的默认构造函数Extension(),子类的默认构造函数中执行add(2),i=2+2x2,所以i=6:执行add(8);i=6+8x2,因此,最终i=22,正确答案为选项D。

  • 第10题:

    下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int i=1: switch(i){ case0: System.OUt.println("0"); break; casel: System.out.println("1"); case2: System.OUt.println("2"); break; default: System.out.println("default"); } } }

    A.01

    B.12

    C.10

    D.21


    正确答案:B
    B。【解析】本题考查switch-case-break的用法。每个分支语句后面必须有break语句,否则程序向下执行,直到遇到break语句或程序结束。所以该题i=1时执行easel分支语句,而casel分支语句后没有break语句,程序继续向下执行case2分支语句,case2语句后有break语句,故程序不执行default分支语句。

  • 第11题:

    有以下程序 public class Sun { public static void main(string args[ ]) { int a, b; for(a=1, b=1; a<=100; a++) { if(b>=10) break; if (b%3==1) { b+=3; continue; } } System.out.println(A) ; } } 执行后的输出结果是( )。

    A.101

    B.6

    C.5

    D.4


    正确答案:D
    解析:本题考查for循环和if语句的嵌套以及break语句和continue语句的用法。第1个if语句的意义为:当b>=10时退出for循环。第2个if语句的意义为:如果b%3=1时,b的值加3并退出本次循环。本程序当b的值分别为1、4、7的时候执行3次循环,此时a=3,b=10,当执行第4次循环时,a的值为4但b=10,所以退出循环程序结束。答案A没有考虑for循环中的两个if条件。

  • 第12题:

    编译如下Java程序片断:  class test{  int count = 9;  public void a(){    int count=10;  System.out.println("count 1 =" + count);  }  public void count(){  System.out.println("count 2 =" + count);  }  public static void main(String args[]){    test t=new test();    t.a();   t.count();   } }  结果将()。    

    • A、不能通过编译
    • B、输出:       count 1 = 10        count 2 = 9
    • C、输出:          count 1 = 9          count 2 = 9

    正确答案:B

  • 第13题:

    阅读下面程序

    public class Test2{

    public static void main(String args[]){

    int a=10,b=4,c=20,d=6;

    System.out.println(a++*b+c*-d);

    }

    }

    程序运行的结果是

    A)144

    B)160

    C)140

    D)164


    正确答案:C

  • 第14题:

    下面程序段的输出结果是( )。 public class Test { public static void main (String[] args) { for ( int a=0;a<10;a++) { if (a==5) break; System.out.println(A); } } }

    A.01234

    B.6789

    C.012346789

    D.5


    正确答案:A
    解析:题目中输出语句位于循环体内,而在if语句外,所以a5时执行输出语句。当a=5时,退出循环,结束程序的执行。

  • 第15题:

    下列程序的输出结果是 ( ) public class Test { public static void main(String args[]) { System.out.println(100%3); System.out.println(100%0);} }

    A.1和1

    B.1和10

    C.10和1

    D.10和10


    正确答案:D

  • 第16题:

    下面程序段的输出结果是( )。 public class Test { public static void main(String args[]){ int a, b; for(a=1, b=1; a<=100; a++){ if(b>=10) break; if (b%2==1) { b+=-2; continue; } } System.out.println(a); } }

    A.5

    B.6

    C.7

    D.101


    正确答案:B

  • 第17题:

    下列程序的输出结果是class Test{public static void main(String args[]){int n=7;n<<=3;n=n&am

    下列程序的输出结果是 class Test{ public static void main(String args[]){ int n=7; n<<=3; n=n&n+1|n+2^n+3; n>>=2; System.out.println(n); } }

    A.0

    B.-1

    C.14

    D.64


    正确答案:C
    解析:本题考查Java中的运算符。首先要清楚程序里面涉及的运算符的含义。“”是按位左移运算符,“&”是按位与运算符,“|”是按位或运算符,“^”是按位异或运算符。题目中整型变量n=7相当于二进制中的111,n=3语句执行后,n值为111000,相当于十进制的56,而语句n=n&n+1|n+2^n+3执行后,n值为57;n>>=2语句执行后,n的值为14,所以选项C正确。

  • 第18题:

    下面程序段的输出结果是( )。 public class Test { public static void main (String[] args) { int j=2,i=5; while (j<i--) j++; System.out.println(j);} }

    A.2

    B.3

    C.4

    D.5


    正确答案:C
    解析:循环时,首先判断结束条件,25,然后i=4,j=3,继续循环,i=3,j=4,结果条件ji为假,退出循环,因此j=4。所以选C。

  • 第19题:

    阅读下面程序 public class Test2 { public static void main(String args[]){ int a=1O, b=4, c=20, d=6; System.out.println(a++*b+c*--D) ; } } 程序运行的结果是

    A.144

    B.160

    C.140

    D.164


    正确答案:C
    解析:本题考查Java的一元算术运算符。一元运算符中包含如下两个:
      (1)增量运算符++,将操作数加1。
      (2)减量运算符--,将操作数减1。
      这两个运算符在使用过程中,如果将增量运算和减量运算表达式再作为其他表达式的操作数使用时,i++与++i是有区别的:i++在使用i之后,使i的值加1,因此执行完 i++后,整个表达式的值为i,而i的值变为i+1;++i在使用i之前,使i的值加1,因此执行完++i后,整个表达式的值和i的值都为i+1。i--与--i的区别和i++与++i的区别类似。
      本题程序中,首先声明a、b、c、d四个变量,并为其赋值。然后计算表达式a++*b+c*--d的结果,根据上述运算规则,在计算表达式时,a的值为10,d的值为5。把值带入表达式,即计算10*4+20*5,结果为140。计算完表达式后,a的值为11,d的值为5。
      因此,本题的正确答案是选项C。

  • 第20题:

    下列程序输出结果为( )。public class test { public static void main(String args[]) { int a=0; outer: for(int i=0;i<2;i++) { for(int j=0;j<2;j++) { if(j>i) { continue outer; } a++; } } System.out.println(a); }}

    A.0

    B.2

    C.3

    D.4


    正确答案:C

  • 第21题:

    有以下程序 public class Sun { public static void main(string args[ ]) { int a, b; for(a=1, b=1; a<=100; a++) { if(b>=10} break; if (b%3 1) { b+=3; continue; } } System.cut.println(A) ; } } 执行后的输出结果是( )。

    A.101

    B.6

    C.5

    D.4


    正确答案:D
    解析:本题考查for循环和if语句的嵌套以及break语句和continue语句的用法。第1个if语句的意义为:当b>=10时退出for循环。第2个if语句的意义为:如果b%3=1时,b的值加3并退出本次循环。本程序当b的值分别为1、4、7的时候执行3次循环,此时a=3, b=10,当执行第4次循环时,a的值为4但b=1O,所以退出循环程序结束。答案A没有考虑for循环中的两个if条件。

  • 第22题:

    给出下面代码段: public class Test{ public static void main(String args[] ) { int m; switch(m) { case 0: System.out.println("case 0"); case 1: System.out.println("case 1"); break; case 2: break; default: System.out.println("default"); } } } 下列m的值能引起输出“default”的是( )。

    A.0

    B.1

    C.2

    D.4


    正确答案:D
    解析:本题考查条件语句switch的应用。此代码段最后输出default,则表示m的值不能为0、1和2三者其中之一,故m的值只能选择D。

  • 第23题:

    编译如下的Java程序片段:  Class test{     Int count=9;     Public void a(){   Int count=10;   System.out,println(“count 1=” + count); }  Public void count(){   System.out.println(“count 2 =”+ count); }  Public static void main(String args[] ){   Test t=new Test();   t.a();   t.count(); } }  结果是()

    • A、不能通过编译
    • B、输出:count 1 =10  count 2=9
    • C、输出:count 1=9 count 2=9

    正确答案:B

  • 第24题:

    单选题
    编译如下Java程序片断:  class test{  int count = 9;  public void a(){    int count=10;  System.out.println("count 1 =" + count);  }  public void count(){  System.out.println("count 2 =" + count);  }  public static void main(String args[]){    test t=new test();    t.a();   t.count();   } }  结果将()。
    A

    不能通过编译

    B

    输出:       count 1 = 10        count 2 = 9

    C

    输出:          count 1 = 9          count 2 = 9


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