• 多重循环、方法作业


    多重循环、方法作业

    一、    选择题

    1.

    分析下面的Java多重循环代码片段,编译运行后的输出结果是(   D 。(选择一项)

     

    for (int i = 0; i < 6; i++) {

             int k = ++i;

             while (k < 5) {

                      System.out.print(i);

                      break;

             }

    }

     

     

     

     

    A.

    024

     

    B.

    02

     

    C.

    123

     

    D.

    13

    2.

    给定如下Java代码,编译运行的结果是(  A  )。(选择一项)

     

    public class Test {

             public static void main(String[] args) {

                      int sum=0;

                      for(int i=1;i<10;i++){

                              do{

                                       i++;

                                       if(i%2!=0)

                                                sum+=i;

                              }while(i<6);

                      }

                      System.out.println(sum);

             }

    }

     

     

     

     

    A

    8

     

    B.

    15

     

    C.

    24

     

    D.

    什么也不输出

    3.

    Javamain方法的返回值是(  D  )。(选择一项)

     

     

     

     

    A

    String

     

    B.

    int

     

    C.

    char

     

    D.

    void

    4.

    Java的程序类中如下方法定义正确的是(  A D )。(选择两项)

     

     

     

     

    A

    public int ufTest(int num){

                      int sum=num+100;

                      return sum;

    }

     

    B.

    public String ufTest(int num){

                      int sum=num+100;

                      return sum;

    }

     

    C.

    public void ufTest(int num){

                      int sum=num+100;

                      return sum;

    }

     

    D.

    public float ufTest(int num){

                      int sum=num+100;

                      return sum;

    }

    5.

    以下关于方法调用的代码的执行结果是(   B 。(选择一项)

     

    public class Test {

             public static void main(String args[]) {

                      int i = 99;

                      mb_operate(i);

                      System.out.print(i + 100);

             }

             static void mb_operate(int i) {

                      i += 100;

             }

    }

     

     

     

     

    A.

    99

     

    B.

    199

     

    C.

    299

     

    D.

    99100

    6.

    下面( BD    )方法是public void example(){…}的重载方法。(选择二项)

     

     

     

     

    A

    private String example(){…}

     

    B.

    public int example(String str){…}

     

    C.

    public void example2(){…}

     

    D.

    public int example(int m,float f){…}

    7.

    以下选项中添加到代码中横线处会出现错误的是(  BD   )。(选择二项)

     

    public class Test {

             public float aMethod(float a, float b) {

                      return 0;       

             }

                                           

    }

     

     

     

     

    A

    public float  aMethod(float a, float b, float c) {

                      return 0;

    }

     

    B.

    public float  aMethod(float c, float d) {

                      return 0;

    }

     

    C.

    public int  aMethod(int a, int b) {

             return 0;

    }

     

    D.

    private int  aMethod(float a, float b) {

             return 0;

    }

    二、    判断题

    1. 多重循环是指一个循环体内又包含另一个完整的循环结构。外层循环变量变化一次,内层循环变量要从头到尾变化一遍。(  T  )
    2. 定义方法时的参数称为实在参数,调用方法时的参数称为形式参数。(  F  )
    3. 调用方法时,要求实参和形参的个数相同,类型匹配。(  T  )
    4. 判断方法重载的依据是方法名相同,参数不同。(T   )

    三、    简答题

    1. 在多重循环中,如何在内层循环中使用break跳出外层循环。

        (1)正常情况下,break只是跳出内层循环。

        (2)可以使用带标签的break,相当于goto,比如break a指的是退出a所在的循环。但是不建议使用这种方法,因为跳多了出不来

        另外:带标签的continue用法类似

        举例子

     1                int i=0;
     2 
     3                int j=0;
     4 
     5                a: for(;i<10;i++){
     6 
     7                b:for(;j<10;j++){
     8 
     9                if(j==4){
    10 
    11                     break a;  //跳出a所在的循环
    12 
    13                }
    14 
    15  
    1. 方法重载的定义、作用和判断依据

        定义:一个类中含两个以上同名的方法,他们之间就构成重载

        特点:
          1、必须是两个以上同名的方法
          2、方法之间的参数组合必须不同(参数的数目不同或者参数的类型不同)
          3、方法的返回值不能作为判断方法之间是否构成重载的依据

        好处:
          大大简化啦的类调用者的代码,让我们感觉类有一种自动化调用的功能,而没有增加类创建的代码

    四、    编码题

    1. 打印九九乘法表
    1 public static void main(String[] args) {
    2         for(int i=1;i<=9;i++){
    3             for(int j=1;j<=i;j++){
    4                 System.out.print(i+"*"+j+"="+i*j+"	");
    5             }
    6             System.out.println();
    7         }
    8     }

      2.判断1-100之间有多少个素数并输出所有素数。(将判断一个数是否是素数的功能提取成方法,在循环中直接调用即可)

     1 public static void main(String[] args) {
     2             primeNum();//调用素数方法primeNum();
     3         }
     4         //素数的方法
     5         public static void primeNum(){
     6             for(int i=2;i<=100;i++){
     7                 boolean flag = true;
     8                 for(int j=2;j<i;j++){
     9                     if(i%j==0){
    10                         flag = false;
    11                         break;
    12                     }
    13                 }
    14              if(flag){
    15                  System.out.println(i+"	");
    16              }
    17             }
    18         }

      3.输入三个班,每班10个学生的成绩,求和并求平均分

    public static void main(String[] args) {
            double sum = 0;
            double aver = 0;
            Scanner sc = new Scanner(System.in);
            for(int i=1;i<=3;i++){
                System.out.println("当前是第"+i+"个班级的成绩!");
                for(int j=1;j<=10;j++){
                    System.out.println("请输入第"+j+"个学生的成绩:");
                    double grade = sc.nextDouble();
                    System.out.println(grade);
                    sum+=grade;
                }
                aver=sum/10;
                System.out.println("第"+i+"个班级的总分是:"+sum+"	"+"它的平均分是"+aver);
            }
        }

    五、   可选题

    1. 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

      2.定义方法:打印指定行和列的矩形

     1 public static void main(String[] args) {
     2          Scanner sc = new Scanner(System.in);
     3          System.out.println("请输入打印长方形的行数:");
     4          int line = sc.nextInt();
     5          System.out.println("请输入打印长方形的列数:");
     6          int row = sc.nextInt();
     7          for(int i=1;i<=line;i++){
     8                 for(int j=1;j<=row;j++){
     9                     System.out.print(" *");
    10                 }
    11                 System.out.println();
    12             }    
    13     }
  • 相关阅读:
    Wiggle Sort II
    Coin Change
    MPLS LDP 知识要点
    MPLS Aggreate & Untag
    Lab MPLS隐藏标签显示
    Lab MPLS过滤标签转发
    MPLS MTU Aggregation
    研究MPLS MTU的问题
    Lab 利用MPLS解决BGP路由黑洞
    MPLS 标签保留
  • 原文地址:https://www.cnblogs.com/topshark/p/10251819.html
Copyright © 2020-2023  润新知