Java基础语法练习题

循环语句(for、while、do-while、break、continue、循环标号)

第1题

  1. 题干:

在main方法中分别打印下列四个图形

图形1: 图形2:    

* *        

**    **      

***           ***    

****         ****      

  1. 示例

程序执行出现如下结果

  1. 参考答案

2

  1. 题干:

在main方法中打印100-999之间所有的水仙花数,

所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

      

  1. 示例

程序执行出现如下结果

  1. 参考答案

3

  1. 题干:

一个球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?   

  1. 示例

程序执行出现如下结果

  1. 参考答案

4

  1. 题干:

键盘输入一个数你,计算数字n阶乘 n! = n*n-1*n-2……

注:使用while完成

  1. 示例

程序执行出现如下结果

  1. 参考答案

5

  1. 题干:

          使用for循环,在控制台打印出九九乘法表。

  1. 示例

程序执行出现如下结果

  1. 参考答案

6

  1. 题干:

         获取一个2-500之间(包含2和500)的随机数n,求0-n之间(包含0和n)的偶数和,并打印到控制台上;

  1. 示例

程序执行出现如下结果

  1. 参考答案

7

  1. 题干:

          一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?

  1. 示例

程序执行出现如下结果

  1. 参考答案

一维数组

8

  1. 题干:

int[] arr = {1,1,2,2,3,4,5,4,3,2,1}, 打印出数字 2现的次数。

  1. 示例

程序执行出现如下结果

  1. 参考答案

9

  1. 题干:

        在数组中 查询数据第二次55出现的位置,打印第二次出现的索引 (索引指从0开始)

[11, 32,55, 47,55, 79,23]

示例

程序执行出现如下结果

  1. 参考答案

10

  1. 题干:

         定义一个长度为5int型数组,之后生成5个随机数存入数组,随机     数范围为10100(包含10100),遍历数组,将数组中小于50的元素替换成0,之后打印修改后的数组

  1. 示例

程序执行出现如下结果

  1. 参考答案

11题

  1. 题干:

          将下面的数组元素前后互换

[11, 32,55, 47,79,23]

置换后的数组元素为:

[23, 79, 47, 55, 32, 11]

  1. 示例

程序执行出现如下结果

  1. 参考答案

12

  1. 题干:

获取指定数组中元素值为偶数并且小于指定偶数的元素个数,要求如下:

定义main方法,方法内完成:

1.定义一个int数组arr

2.键盘录入5个整数,并存入数组arr中,输入前提示当前输入的是第几个整数

3.键盘录入1个整数num,

4.获取数组arr中元素值小于整数num并且元素值为偶数的元素个数

5.在控制台上打印输出

  1. 示例

程序执行出现如下结果

  1. 参考答案

public class demo03 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int[] arr =new int[5];
        for(int i=0;ilength;i++){
            System.out.println("请输入第"+(i+1)+"个数:");
            int inNum = sc.nextInt();
            arr[i]=inNum;
        }
        System.out.println("请输入第需要比较的数:");
        int num = sc.nextInt();
        int count = getInfo(arr,num);
        System.out.println("小于"+num+"的偶数有:"+count+"个");

    }
    public static int getInfo(int[] arr ,int num){
        int count=0;
        for(int i=0;ilength;i++){
            if(arr[i]2==0){
                count++;
            }
        }
        return count;
    }
}

13

  1. 题干:

使用数组完成,要求如下:

某个公司采用公用电话传递数据信息,数据是小于8位的整数,为了确保安全,在传递过程中需要加密,加密规则如下:

ü首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,

ü最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数

ü然后,把加密后的结果在控制台打印出来

定义main方法,方法内完成:

1.定义一个int类型的整数(值为:123456)

2.把此整数转换为数组存储

3.按照加密规则计算后,把加密后的结果在控制台打印输出

  1. 示例

程序执行出现如下结果

二维数组

14

  1. 题干:

          现有二维数组, int[][] array={{1,2,8,9},

                             {2,4,9,12},

                             {4,7,10,13},

                             {6,8,11,15}};                                        

计算二维数组中所有元素的和

  1. 示例

程序执行出现如下结果

  1. 参考答案

15

  1. 题干:

         现有二维数组, int[][] array={{1,2,8,9},

                             {2,4,9,12},

                             {4,7,10,13},

                             {6,8,11,15}};                                       

 求二维数组中所有元素的最大值。

  1. 示例

程序执行出现如下结果

  1. 参考答案

16

  1. 题干:

         

1、获取李四的数学成绩: arr[1][0]

 2、使用二维数组遍历展示所有同学的所有成绩

 3、计算数学平均成绩:(arr[0][0]+ arr[1][0]+ arr[2][0]+ arr[3][0]+ arr[4][0])/5

  1. 示例

程序执行出现如下结果

  1. 参考答案

方法

17

  1. 题干:

         统计直角三角形个数

          学生自己新建类TestThree.java

将如下代码复制到TestThree中

public static void main(String[] args)  {

    //二维数组中保存了5个三角形的边长数据

    int[][] arrs = {

{3,5,4},

{10,6,8},

{15,9,12},

{12,18,20},

{12,13,5}

};

    //统计二维数组中有多少个直角三角形

    int sum = sumTriangle(arrs);

    System.out.println("文件中一共保存了"+sum+"个直角三角形");

}

学生在类中自己实现sumTriangle方法,完成直角三角形数量统计。不允许修改main方法中的代码

释义:

二维数组arrs中有如下5行数据表示5个三角形,

每一行数据代表一个三角形的三条边长,

直角三角形边长公式c²=a²+b² 

举例:3,5,4 表示三角形三条边分别是 3 、5 、4 符合 5²=3²+4²,则这是一个直角三角形。

      12,18,20表示三角形三条边分别是12、18、20,12²+18²!= 20²,则不是一个直角三角形。

  1. 示例

程序执行出现如下结果

  1. 参考答案

18

  1. 题干:

定义方法  判定直角三角形, isRightTriangle,参数为int类型的三角形的三条边,     返回值为布尔值,是直角三角形为true,否则false  

代码实现,效果如图所示:

     

  1. 示例

程序执行出现如下结果

  1. 参考答案

19

  1. 题干:

定义void printArr(int[] arr)静态方法,功能:按顺序打印arr数组的所有元素。     要求打印格式如下:[11,32,55, 47,79,23]。并在main方法中完成printArr方法的调用。

  1. 示例

程序执行出现如下结果

  1. 参考答案

20

  1. 题干:

语文

数学

英文

第1名同学

98

58

87

第2名同学

97

53

39

第3名同学

81

88

79

第4名同学

70

64

83

1.在main方法中定义int[][] score(该数组4行3列)数组,并把全班的成绩存放到score数组中。(5分)

2.定义void printScore(int[][] score)方法,该方法用于控制台打印全班成绩,并在main方法中调用printScore方法。(5分)

3. (10分)定义int[] getAvgs(int[][] score)方法,该方法计算每名同学的平均分并存放到一个新的一维数组中返回(4名同学就有4个平均分)。然后在main方法中调用本方法,并在main方法中打印每名同学的平均分,打印格式:

第一位学生平均分:81

第二位学生平均分:63

第三位学生平均分:82

第三位学生平均分:72

4. (附加题)定义int[] getLower(int[][] score)方法,该方法要计算出哪名同学的不及格成绩最多,然后返回该名同学的所有成绩。并且在main方法中调用本方法获取不及格最多的学生成绩,然后在控制台打印该名同学的所有成绩。(15分)

  1. 示例

程序执行出现如下结果

  1. 参考答案

21

  1. 题干:

          //准备数据              语  数  外

        String[][] all = {

                {"张三","37","89","5"},

                {"李四","95","41","79"},

                {"王五","60","84","29"},

                {"赵六","87","46","86"}

        };

/**

 * Created by lb_nst on 2018/10/17.

 * 二维数组的实际应用

 * 请使用String类型的数组,记录所有同学的名称即分数。

 *

 * 求:

 *      1.定义方法 printMathScore       打印所有同学数学成绩  

 *      2.定义方法 getCountMathScore    获取所有同学数学成绩的总和

 *      3.定义方法 getAvgMathScore     获取所有同学数学成绩的平均分

 *      4.定义方法 getAvgName         获取所有数学成绩超过平均分的人名

 *      5.定义方法 getAvgCount         获取所有数学成绩高过平均分的人数

 *

 * 友情提示:字符串转成整数的方法:int number = Integer.parseInt("109");

 *

 * 附加:

 *      找到平均成绩最高的学科

 *      获取该学科前三名同学的姓名

 *      请找出不及格的科数小于等于1门的同学,且总成绩大于180分

 */

  1. 示例

程序执行出现如下结果

  1. 参考答案

22

  1. 题干:

获取指定数组中元素值为奇数的元素个数,具体要求如下:

定义int getEvens(int[] arr)静态方法,方法内要求:获取指定数组arr中元素值为奇数的元素个数,并返回

定义main方法,方法内完成:

1.定义一个整数数组arr;

2.获取4个1~50之间(包含1和50)的随机数,并存入arr

传递arr调用getEvens(int[] arr)方法,获取返回值,并打印

  1. 示例

程序执行出现如下结果

  1. 参考答案

23

  1. 题干:

数组元素位置互换程序,要求如下:

定义static void  judge(int[] arr)方法,方法内完成:比较指定数组arr中第一个角标的元素值与倒数第一个角标的元素值之间的大小,如果第一个角标的元素值小于倒数第一个角标的元素值,则将2个元素在数组中的位置互换,否则数组不变。判断完将arr中的所有元素打印

定义main方法,要求完成:

1.定义一个整数数组arr,包含元素11,21,5,12,7,14

2.传递arr调用judge(int[] arr)方法

  1. 示例

程序执行出现如下结果

  1. 参考答案

你可能感兴趣的:(Java,java)