大数据学习第四天——选择语句+循环语句课后作业

一、填空题
1.Java中有两种类型的选择结构的控制语句,分别是if语句和 while语句 。
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. 以下代码的执行结果是( A )。(选择一项)
    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的定义,( B D )可使以下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;

  4. 阅读下列文件定入的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(“ab”);
    case ‘c’:
    System.out.print(“c”);
    default:
    System.out.print(“d”);
    }
    }
    }

    A a
    B. b
    C. c
    D. cd

  5. 以下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

  6. 以下四个选项中和下面代码功能相同的是( 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++){ sum=sum+x;}
    B. for (int x =0; x<=100;x+=2){ sum=sum+x;}
    C. for (int x =1; x<=100;x+=2){ sum=sum+x;}
    D. 上述全对

  7. 以下do-while循环代码的执行结果是( A )。(选择一项)
    int a=0;
    int c=0;
    do{
    –c; //-1
    a=a-1; //-1
    }while(a>0);
    System.out.println(a+" "+c);

    A. -1 -1
    B. 死循环
    C. -1 -2
    D. -1 0

  8. while循环和do-while循环的区别是( D )。(选择一项)

    A. 没有区别,这两个结构在任何情况下效果一样
    B. while循环比do-while循环执行效率高
    C. while循环是先循环后判断,所以循环体至少被执行一次
    D. do-while循环是先循环后判断,所以循环体至少被执行一次

  9. 在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

  10. 下面程序执行的结果是在屏幕上打印( B )次大数据特训营。(选择一项)
    for(int i=1;i<=10;i++){
    if (i<5)5 6 7 8 9 10
    continue;
    System.out.println(“大数据特训营”); //1,1,1,1,1,1
    }

    A 5
    B. 6
    C. 7
    D. 8

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

四、简答题
1.if多分支语句和switch语句的异同之处
相同之处:if跟switch都可以对语句进行判断
不同指出:if的判断语句可以通过一个范围,而switch则是通过特定的值来进行判断。
2.while和do-while语句的异同之处
相同点:都是循环语句,且当循环的次数不确定的时候,优先使用
不同点:while先进行循环判断,再进行循环体内容,而do…while则是先运行循环体,然后再进行循环判断。
3.break和continue语句的作用
Break: 使用与switch和循环语句中,表示结束当前循环;
Continue:常使用在循环语句中,表示结束当层循环;
五、代码题

/*
    第四天————作业3的内容
    1.输入一个数,判断是奇数还是偶数
 */
import java.util.Scanner;
public class zy1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输入一个数,判断是奇数还是偶数:");
        int num = sc.nextInt();
        if(num%2==0){
            System.out.println(num+"是偶数");
        }else{
            System.out.println(num+"是奇数");
        }


    }
}
/*
    根据月份,输出对应的季节,并输出至少两个描述该季节的成语和活动。
 */

import java.util.Scanner;

public class zy2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输入月份:");
        int x = sc.nextInt();
        if (x <= 5 && x >= 3) {
            System.out.println("春天");
        } else if (x >= 6 && x <= 8) {
            System.out.println("夏天");
        } else if (x >= 9 && x <= 11) {
            System.out.println("秋天");
        } else if(x<=2||x==12){
            System.out.println("冬天");
        }else{
            System.out.println("输入错误!");
        }


    }
}
import java.util.Scanner;

public class zy3 {


    //输入一个数,判断是否为素数
    public static void getSuShu(int num){
        int i = 2;
        while (i < num) {
            if (num % i == 0) {
                System.out.println(num + "不是素数!");
                break;
            } else {
                i++;
            }
        }
        if (i >= num) {
            System.out.println(num + "是素数!");
        }
    }


    public static void printSuShu(int num1,int num2){

        for(int i=num1+2;i<=num2;i++){
            int k = 2;
            while(k<i){
                if(i%k==0){
                    break;
                }else{
                    k++;
                }
            }
            if(k>=i){
                System.out.print(i+"  ");
            }
        }
    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
//        int num = sc.nextInt();
//        getSuShu(num);
        //打印1——100的素数
        int i = 1;
        int j = 100;
        printSuShu(i,j);
    }
}
/*
    6.从键盘输入某个十进制整数数,转换成对应的二进制整数并输出。
 */
import java.util.ArrayList;
import java.util.Scanner;
public class zy4 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个十进制数:");

        /*这里运用了arraylist,利用arraylist数组的时候不需要知道数组长度
          ArrayList<Integer> arr = new ArrayList<Integer>();
                    数据类型(包类)
          常用方法:arr.add()添加数据
                    arr.get()获取数据

        */

//        int n = sc.nextInt();
//        ArrayList<Integer> arr = new ArrayList<Integer>();
//        System.out.println("转换成的二进制整数:");
//        while(true){
//            int a = n%2;
//            n = n/2;
//            arr.add(a);
//            if(n==0){
//                break;
//            }
//        }
//        for(int i = arr.size()-1;i>=0;i--){
//            System.out.print(arr.get(i));
//        }

        /*
            第二种方法,利用Integer的方法自动化转换(简单快捷)
            10进制转2进制   Integer.toBinaryString(n); 一个二进制字符串.
            10进制转8进制   Integer.toOctalString(n);  一个八进制字符串
            10进制转16进制  Integer.toHexString(n);    一个16进制字符串
            10进制转 r 进制 Integer.toString(100, 16); 一个r进制字符串
         */
        int n = sc.nextInt();
        String  str = Integer.toBinaryString(n);
        System.out.println(str);
    }
}
/*
    3.输入一批整数,使用循环求出最大值与最小值,输入0时结束。
 */
import java.util.Scanner;
public class zy5 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int max = n;
        int min = n;
        while (n!=0){
            n = sc.nextInt();
            if(n!=0){
                if(n>max){
                    max = n;
                }else if(n<min){
                    min = n;
                }
            }
        }
        System.out.println("最大值与最小值:"+max+"   "+min);

    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值