• 【Java牛客刷题】入门篇(04)


    🍎个人主页:亮点的博客
    🍊个人信条:理想如果不向现实做一点点屈服,那么理想也将归于尘土
    🍑刷题专栏:【Java】牛客网刷题
    🥭刷题网站:牛客网 学习的一种有效途径就是刷题,丰富的做题经验可以加深对知识点的理解,推荐一款刷题网站,赶快点击这里注册学习吧👉你的进阶之路!



    1、数组遍历

    题目:将用户输入的六个数字填入数组并找出数组中最大值和最小值

    输入描述: 随机输入的6个整数
    输出描述: 输出数组中的最大值,最小值(最大值最小值之间用空格隔开。若有多个最大值或最小值,输出一次即可)

    代码展示:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            int[] ary = new int[6];
            int max;
            int min;
            Scanner scanner = new Scanner(System.in);
         	for (int i = 0; i <ary.length ; i++) {
                ary[i]=scanner.nextInt();
            }
            max=min=ary[0];
            for(int i=1;i<ary.length;i++){
                if(ary[i]>max){
                    max=ary[i];
                }
                if(ary[i]<min){
                    min=ary[i];
                }
            }
            System.out.println(max+" "+min);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    示例:

    输入:1 3 5 2 4 6
    输出:6 1

    2、数组倒转

    题目:输入6个整数,先将其输出然后再将数组倒转,再次输出数组

    输入描述: 用户随机输入的6个int类型变量
    输出描述: 先输出用户输入顺序的数组,再输出反转后的数组

    代码展示:

    import java.util.Arrays;
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            int[] arr = new int[6];
            Scanner scanner = new Scanner(System.in);
            for (int i = 0; i < arr.length; i++) {
                arr[i] = scanner.nextInt();
            }
            System.out.println(Arrays.toString(arr));
    
            for(int i=0;i<arr.length/2;i++){
                int temp=arr[arr.length-1-i];
                arr[arr.length-1-i]=arr[i];
                arr[i]=temp;
            }
            System.out.println(Arrays.toString(arr));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    示例:

    输入:52 10 37 40 60 83
    输出:
    [52, 10, 37, 40, 60, 83]
    [83, 60, 40, 37, 10, 52]

    3、二维数组求和

    题目:给定一个二维数组,请你编写一个求和函数,计算出这个数组元素的和

    输入描述:
    输出描述: 输出二维数组元素的和

    代码展示:

    public class Main {
        public static void main(String[] args) {
            int[][]  arr = {{11,33,55},{22,44,66,88},{131,214,315,146},{928,827,726,625},{424,525}};
            int sum=add(arr);
            System.out.println(sum);
        }
    
        public static int add(int[][] arr) {
            int sum=0;
    
            for(int i=0;i<arr.length;i++){
                for(int j=0;j<arr[i].length;j++){
                    sum+=arr[i][j];
                }
            }
            return sum;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    示例:

    输入:无
    输出:5180

    4、修改Data类的定义

    题目:现有一个Data类,内部定义了属性x和y,在main方法中实例化了Data类,并计算了data对象中x和y的和。但是,Data类的定义存在错误,请你将这些错误修正过来,使得main方法中的求和逻辑可以正常执行。

    输入描述: 两个整数
    输出描述: 两个整数的和

    代码展示:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            while (scanner.hasNextInt()) {
                int x = scanner.nextInt();
                int y = scanner.nextInt();
                Data data = new Data(x, y);
                System.out.println(data.getX() + data.getY());
            }
        }
    }
    
    class Data {
    
        private int x;
        private int y;
    
        public Data(int x, int y) {
            this.x = x;
            this.y = y;
        }
    
        public int getX() {
            return x;
        }
    
        public int getY() {
            return y;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    示例:

    输入:1 2
    输出:3

    5、验证年龄

    题目: 采用封装的思想,为Person类定义年龄属性,要求:
    修改年龄时判断其范围,若年龄小于0则按0输出,若年龄大于200则按200输出。

    输入描述: 年龄整数值
    输出描述: 1. 若年龄小于0则输出0;
    2. 若年龄大于200则输出200;
    3. 若年龄介于[0,200]之间则直接输出。

    代码展示:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Person p = new Person();
            Scanner scanner = new Scanner(System.in);
            while (scanner.hasNextInt()) {
                int age = scanner.nextInt();
                p.setAge(age);
                System.out.println(p.getAge());
            }
        }
    
    }
    
    class Person {
    
        private int age;
    
        public void setAge(int age){
            this.age=age;
        }
        public int getAge(){
            if(age<0){
                return 0;
            }else if(age<=200){
                return age;
            }else{
                return 200;
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    示例:

    输入:25
    输出:25


    和我一起来刷题学习吧!传送门👉牛客网-求职|面试|学习
    在这里插入图片描述

  • 相关阅读:
    多线程一定能优化程序性能吗?
    接口测试和功能测试有什么区别
    ESP-C3入门22. 基于VSCODE使用内置JTAG调试程序
    「2022最新版」Java基础面试题总结(60道题含答案解析)
    Shell 文件包含的学习笔记
    安防监控系统/视频云存储/视频AI智能分析:人形检测算法应用汇总
    【学习记录】tensorflow图像数据增强
    机器学习——pca降维/交叉验证/网格交叉验证
    easyexcel导出excel 简单实现
    基于STM32设计的智能水产养殖系统(华为云IOT)
  • 原文地址:https://blog.csdn.net/CSDN_anhl/article/details/126697866