「Java题库」循环结构(理论+操作)

理论试题

一、选择题

  1. 下面哪个循环会至少执行一次循环体?
    A) while循环
    B) for循环
    C) do…while循环
    D) 以上都不是
    答案: C
    解析: do…while循环就像"先上车后补票",不管条件如何都会先执行一次循环体,while和for都是先看条件再决定执不执行。

  2. 这段代码会输出什么?

    int i = 5;
    while(i > 0){
         
         
        System.out.print(i + " ");
        i--;
    }
    

    A) 5 4 3 2 1
    B) 4 3 2 1 0
    C) 5 4 3 2 1 0
    D) 无限循环
    答案: A
    解析: 循环从i=5开始,每次输出i的值后减1,当i=0时条件不成立退出循环,所以不会输出0。

  3. 想要打印1到100的偶数,for循环空白处应该填什么?

    for(int i = 1; _______; i++){
         
         
        if(i % 2 == 0){
         
         
            System.out.println(i);
        }
    }
    

    A) i <= 100
    B) i < 100
    C) i >= 100
    D) i == 100
    答案: A
    解析: 要包含100这个数,所以用i<=100而不是i<100,i从1开始每次加1,通过if条件筛选出偶数。

二、填空题

  1. 下面代码输出结果是________。

    int count = 3;
    do {
         
         
        System.out.print(count * 2 + " ");
        count++;
    } while(count < 5);
    

    答案: 6 8
    解析: 第一次count=3输出6,count变成4;第二次count=4输出8,count变成5后不满足条件退出。

  2. 下面代码空白处应该填________才能输出3次"Hello"。

    for(int i = 0; ________; i++){
         
         
        System.out.println("Hello");
    }
    

    答案: i < 3
    解析: i从0开始,i=0,1,2时循环,共3次,i=3时退出。

  3. 下面while循环等价于for循环:________。

    int j = 10;
    while(j > 0){
         
         
        System.out.println(j);
        j -= 2;
    }
    

    答案:

    for(int j = 10; j > 0; j -= 2){
         
         
        System.out.println(j);
    }
    

    解析: 把while循环的初始化、条件判断和迭代部分整合到for循环的三个表达式中。

三、程序分析题

  1. 下面代码有什么问题?如何修改?
    int k = 1;
    

你可能感兴趣的:(「Java题库」循环结构(理论+操作))