选择语句加循环语句题目练习

选择语句+循环语句作业

一、填空题

  1. Java 中有两种类型的选择结构的控制语句,分别是 if 语句和 switch
  2. 在 Java JDK1.7 之前,switch 只能支持 byte 、short 、char 、int 或者其对应的封装类 以及 Enum 类型。在 JDK1.7 中又加入了 String 类型。
  3. for 循环的语法格式是 for (表达式1; 表达式2; 表达式3) {循环体} ,其中在整个循环过程中只执行一次的部分是 表达式1。
  4. 在循环结构中,如果想跳出循环体,结束整个循环结构可以使用 break 语句。
  5. continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。即只结束本次循环,而不是终止整个循环的执行。

二、选择题

  1. 以下代码的执行结果是( B )。(选择一项)

    boolean m = false;
    if (m = false) {
        System.out.println("false");
    } else {
        System.out.println("true");
    }
    
    • A. false
    • B. true
    • C. 编译错误
    • D. 无结果
  2. 分析如下 Java 代码,编译运行的输出结果是( A )。(选择一项)

    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        if (!(a && b)) {
            System.out.print("!(a&&b)");
        } else if (!(a || b)) {
            System.out.println("!(a || b)");
        } else {
            System.out.println("ab");
        }
    }
    
    • A. !(a&&b)
    • B. !(a || b)
    • C. ab
    • D. !(a || b)ab
  3. 变量 x 的定义选项
    下列选项中关于变量 x 的定义,(BD) 可使以下 switch 语句编译通过。(选择二项)

switch(x) {
    case 100:
        System.out.println("One hundred");
        break;
    case 200:
        System.out.println("Two hundred");
        break;
    case 300:
        System.out.println("Three hundred");
        break;
    default:
        System.out.println("default");
}
  • A. double x = 100;
  • B. char x = 100;
  • C. String x = "100";
  • D. int x = 100;
  1. Java 代码执行结果
    阅读下列文件定入的 Java 代码,其执行结果是(D)。(选择一项)
public class Test {
    public static void main(String[] args) {
        char ch = 'c';
        switch (ch) {
            case 'a':
                System.out.print("a");
                break;
            case 'b':
                System.out.print("b");
                break;
            case 'c':
                System.out.print("c");
                break;
            default:
                System.out.print("d");
        }
    }
}
  • A. a
  • B. b
  • C. c
  • D. cd
  1. Java 程序输出结果
    以下 Java 程序编译运行后的输出结果是(B)。(选择一项)
public class Test {
    public static void main(String[] args) {
        int i = 0, sum = 0;
        while (i <= 10) {
            sum += i;
            i++;
            if (i % 2 == 0)
                continue;
        }
        System.out.println(sum);
    }
}
  • A. 0
  • B. 55
  • C. 50
  • D. 36
  1. 代码功能相同的选项
    以下四个选项中和下面代码功能相同的是(B)。(选择一项)
int i = 1;
int sum = 0;
while (i <= 100) {
    if (i % 2 == 0)
        sum = sum + i;
    i++;
}
  • A. for (int x = 1; x <= 100; x++)
  • B. for (int x = 0; x <= 100; x += 2)
  • C. for (int x = 1; x <= 100; x += 2)
  • D. 上述全对
  1. do-while 循环代码执行结果
    以下 do-while 循环代码的执行结果是(A)。(选择一项)
int a = 0;
int c = 0;
do {
    --c;
    a = a - 1;
} while(a > 0);
System.out.println(a + " " + c);
  • A. -1 -1
  • B. 死循环
  • C. -1 -2
  • D. -1 0
  1. while 循环和 do-while 循环的区别
    while 循环和 do-while 循环的区别是(D)。(选择一项)
  • A. 没有区别,这两个结构在任何情况下效果一样
  • B. while 循环比 do-while 循环执行效率高
  • C. while 循环是先循环后判断,所以循环体至少被执行一次
  • D. do-while 循环是先循环后判断,所以循环体至少被执行一次
  1. Java 代码输出结果
    在 Java 中有如下代码,则编译运行该类的输出结果是(D)。(选择一项)
public static void main(String[] args) {
    for(int i = 0; i < 10; i++){
        if (i % 2 != 0) {
            break;
        }
        System.out.print(i);
    }
}
  • A. 13578
  • B. 02468
  • C. 0123456789
  • D. 0
  1. 程序执行结果
    下面程序执行的结果是在屏幕上打印(B)次 "Java 基础班"。(选择一项)
for(int i = 1; i <= 10; i++){
    if (i < 5)
        continue;
    System.out.println("Java基础班");
}
  • A. 5
  • B. 6
  • C. 7
  • D. 8

三、判断题(共 20 个题目,总计 10 分)

  1. if 语句的条件表达式的结果都必须是 boolean 值。( T )
  2. switch 选择语句是多分支选择语句,只能处理等值条件判断的情况,表达式可以是 int 类型、char 类型,但不能是 double,float 类型。( T )
  3. while 循环结构的特点是先循环再判断,循环体至少执行一次。 ( F )
  4. for 循环的语法格式是 for (表达式1; 表达式2; 表达式3) {循环体} ,其中三个表达式都可以省略。( T )
  5. break 语句可以出现在 switch 语句和循环语句中。 ( T )
  6. continue 语句可以出现在 switch 语句和循环语句中。 ( F )

... (其他判断题以类似格式继续,省略以节省空间)

四、编码题

  1. 输入一个数,判断是奇数还是偶数

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe01 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入一个数");
            int a = sc.nextInt();
            if (a % 2 == 0) {
                System.out.println("这是偶数");
            } else if (a % 2 == 1) {
                System.out.println("这是奇数");
            } else {
                System.out.println("输入错误");
            }
        }
    }
    
  2. 根据成绩输出对应的等级,使用 if 多分支和 switch 语句分别实现。
    If代码:

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe02_1 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入您的成绩");
            int a = sc.nextInt();
            if (90 < a && a <= 100) {
                System.out.println("您的成绩为A");
            } else if (80 < a && a <= 90) {
                System.out.println("您的成绩为B");
            } else if (70 < a && a <= 80) {
                System.out.println("您的成绩为C");
            } else if (60 < a && a <= 70) {
                System.out.println("您的成绩为D");
            } else if (0 <= a && a <= 60) {
                System.out.println("您的成绩为E");
            } else {
                System.out.println("输入无效成绩");
            }
        }
    }
    

    Switch代码:

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe02_2 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入您的成绩为:");
            int a = sc.nextInt();
            int b = a / 10;
            if (0 <= a && a <= 100) {
                switch (b) {
                    case 10:
                    case 9:
                        System.out.println("A");
                        break;
                    case 8:
                        System.out.println("B");
                        break;
                    case 7:
                        System.out.println("C");
                        break;
                    case 6:
                        System.out.println("D");
                        break;
                    default:
                        System.out.println("E");
                        break;
                }
            } else {
                System.out.println("输入错误");
            }
        }
    }
    
  3. 根据月份,输出对应的季节,并输出至少两个描述该季节的成语和活动。

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe03 {
     public static void main(String[] args) {
         Scanner sc = new Scanner(System.in);
         System.out.println("请输入月份:");
         int a = sc.nextInt();
         if(3<=a && a<=5){
             System.out.println("春天-春意盎然 春暖花开-踏青");
         } else if (6<=a&&a<=8) {
             System.out.println("夏天-夏日炎炎 夏雨雨人-吃雪糕");
         } else if (9<=a&&a<=11) {
             System.out.println("秋天-秋高气爽 秋秋号呢-丰收");
         } else if (1<=a&&a<=2) {
             System.out.println("冬天-其德隆冬墙 壁冬-打雪仗");
         } else if(a==12){
             System.out.println("冬天-其德隆冬墙 壁冬-打雪仗");
         }
         else{
             System.out.println("输入错误");
         }
     }
     }
    
    
  4. 从键盘输入一个班5个学生的分数,求和并输出。

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe04 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            int sum = 0;
            for (int i = 1; i <= 5; i++) {
                System.out.println("请输入学生的成绩:");
                int score = sc.nextInt();
                sum += score;
            }
            System.out.println("总和为:" + sum);
        }
     }
    
  5. 从键盘输入某个十进制整数数,转换成对应的二进制整数并输出。

    package lanzhishujia.day03;
    
    import java.util.Scanner;
    
    public class ZuoYe05 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入一个十进制整数:");
            int decimal = sc.nextInt();
            String binary = convertDecimalToBinary(decimal);
            System.out.println("对应的二进制数为:" + binary);
        }
    
        public static String convertDecimalToBinary(int decimal) {
            StringBuilder binary = new StringBuilder();
            while (decimal > 0) {
                binary.insert(0, decimal % 2);
                decimal /= 2;
            }
            return binary.length() > 0 ? binary.toString() : "0";
        }
    }
    

热门相关:符宝   带着仙门混北欧   我会一直喜欢你   完美隐婚   首席天价逼婚:老婆不准逃