下对于一下程序段,运行后i值为()。
int i=0, a=1;
switch(a){
           case 1:i+=1; 
           case 2:i+=2;
           case 3 i+=3;break;
           default i+=4;
}
选择:
A1 B2 C3 D6----------------------------------------------------------------
第二题
下面程序段的运行结果是()。
int n=;
while(n++<=2);
System.out.println("n="+n);
A.n=2  B.n=3 C .n=4 D.有语法错误

解决方案 »

  1.   

    switch...case...没有break,会继续执行...
    等号左边没东西,= =|| 
    答案基本告诉你了哈,自己翻翻书就OK了
      

  2.   

    第二题
    下面程序段的运行结果是()。
    int n=0;
    while(n++<=2);
    System.out.println("n="+n);
    A.n=2 B.n=3 C .n=4 D.有语法错误
      

  3.   

    第一题为6,没有break会一直往下执行,遇到break跳出
    第二题 我不知道你是不是写错了,int n=;这样没有赋值,如果是int n=0; 那么结果是4
    如果是int n;那么是语法错误,while循环时没有初值是报错的
      

  4.   

    第一题为6,case没有break的话,会一直往下执行。
    第二题int n=;有点莫名其妙,语法错误。。
      

  5.   

    第一题为6,选C,因为如果case没有break的话,会一直往下执行。
      

  6.   

    我觉得第一题应该没有答案啊,第一题是运行错误啊
    case 3 后边没“:”的啊
      

  7.   

    两个都选D。第一题,去熟悉一下switch...case的语法。每一个case语句为执行语句,遇到break就结束,否则继续执行下语句直到结束,当没有case匹配时,执行default语句。第二题不用说了吧。
      

  8.   

    第一题:C,第二题:B
    第二题应该是楼主写错了,应该是int n = 0;
      

  9.   

    不知道,可以运行下public class Test {
    public static void main(String[] args) {
    int i=0, a=1;
    switch(a){
      case 1:i+=1;  
      case 2:i+=2;
      case 3: i+=3;break;
      default: i+=4;
    }
    System.out.println(i);

    int n=0;
    while(n++<=2);
    System.out.println("n="+n);
    }
    }
      

  10.   

    为什么大家都喜欢这种问题,这就是普通Java试题中的,很常见
      

  11.   

    第一题:
    楼主贴的代码段有错:
      case 3 i+=3;break;  default i+=4;
    以上两句都缺少:
    如果加上:则结果为6;因此答案为D。第二题:
    如果仅楼主的代码来说,是有语法错误的,出现在int n=;这
    如果楼主的代码是int n=0;则结果为4。
    因此答案应该的D有语法错误