• Java2EE基础练习_chapter03数组



    申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址
    全文共计13307字,阅读大概需要3分钟
    欢迎关注我的个人公众号:不懂开发的程序猿

    题目01

        /*
        2. 从键盘读入学生成绩,找出最高分,
        并输出学生成绩等级。
        成绩>=最高分-10 等级为’A’
        成绩>=最高分-20 等级为’B’
        成绩>=最高分-30 等级为’C’
        其余 等级为’D’
        提示:先读入学生人数,根据人数创建int数组,存放学生成绩。
         */
    
    package com.jerry.exer;
    
    import java.util.Arrays;
    import java.util.Scanner;
    
    /**
     * @author jerry_jy
     * @create 2022-09-21 11:02
     */
    public class Exer2 {
        public static void main(String[] args) {
            System.out.println("请输入学生人数:");
            Scanner scanner1 = new Scanner(System.in);
            int stu = scanner1.nextInt();
    
            System.out.println("请输入学生的成绩:");
            int[] arr = new int[stu];
            for (int i = 0; i < 5; i++) {
                Scanner scanner = new Scanner(System.in);
                int score = scanner.nextInt();
                arr[i] = score;
            }
            String s = Arrays.toString(arr);
            System.out.println(s);
    
            Arrays.sort(arr);
            int maxScore = arr[arr.length - 1];
            System.out.println("最高分" + maxScore);
    
            for (int i = 0; i < arr.length; i++) {
                if (arr[i] >= maxScore - 10) {
                    System.out.println("你的分数是:" + arr[i] + ",对应的等级是:A");
                }
                if (arr[i] >= maxScore - 20 && arr[i] < maxScore - 10) {
                    System.out.println("你的分数是:" + arr[i] + ",对应的等级是:B");
                }
                if (arr[i] >= maxScore - 30 && arr[i] < maxScore - 20) {
                    System.out.println("你的分数是:" + arr[i] + ",对应的等级是:C");
                }
                if (arr[i] < maxScore - 30) {
                    System.out.println("你的分数是:" + arr[i] + ",对应的等级是:D");
                }
            }
    }
    

    题目02

        /*
        使用二维数组打印一个 10 行杨辉三角。
        【提示】
        1. 第一行有 1 个元素, 第 n 行有 n 个元素
        2. 每一行的第一个元素和最后一个元素都是 1
        3. 从第三行开始, 对于非第一个元素和最后一个元
        素的元素。即:
        yanghui[i][j] = yanghui[i-1][j-1] + yanghui[i-1][j];
         */
    

    题目03

    创建一个长度为6的int型数组,要求数组元素的值都在1-30之间,且是随机赋值。同时,要求元素的值各不相同。

            int[] arr = new int[6];
            for (int i = 0; i < arr.length; i++) {
                arr[i] = (int) (Math.random() * 29 + 1);
                if (i >= 1 && arr[i] == arr[i - 1]) {
                    arr[i] = (int) (Math.random() * 29 + 1);
                }
            }
            String s = Arrays.toString(arr);
            System.out.println(s);
    

    题目04

        /*
        定义一个int型的一维数组,包含10个元素,分别赋一些随机整数,
    
        然后求出所有元素的最大值,最小值,和值,平均值,并输出出来。
        要求:所有随机数都是两位数。
        提示;
        [0,1) * 90 [0,90) + 10  [10,100) [10,99]
        (int)(Math.random() * 90 + 10)
        */
    
            int[] arr = new int[10];
    
            for (int i = 0; i < arr.length; i++) {
                arr[i] = (int) (Math.random() * 90 + 10);
            }
            Arrays.sort(arr);
            System.out.println("最大值: " + arr[arr.length-1]);
            System.out.println("最小值: " + arr[0]);
            int sum = 0;
            for (int i = 0; i < arr.length; i++) {
                sum += arr[i];
            }
    
            System.out.println("和值: " + sum);
            double avg = (double) sum / arr.length;
            System.out.println("平均值: " + avg);
    
            String s = Arrays.toString(arr);
            System.out.println(s);
    

    题目05

        /*
        练习 6
        使用简单数组
        (1)创建一个名为ArrayTest的类,在main()方法中声明array1和array2两个变量,
        他们是int[]类型的数组。
        (2)使用大括号{},把array1初始化为8个素数:2,3,5,7,11,13,17,19。
        (3)显示array1的内容。
        (4)赋值array2变量等于array1,修改array2中的偶索引元素,使其等于索引值
        (如array[0]=0,array[2]=2)。打印出array1。
        思考:array1和array2是什么关系?
        拓展:修改题目,实现array2对array1数组的复制
         */
    
            int[] arr1,arr2 = new int[0];
            arr1= new int[]{2, 3, 5, 7, 11, 13, 17, 19};
            String s1 = Arrays.toString(arr1);
            System.out.println(s1);
    
            arr2=arr1;
            Arrays.fill(arr2, 0,1,0);
            Arrays.fill(arr2, 2,3,2);
            Arrays.fill(arr2, 4,5,4);
            Arrays.fill(arr2, 7,8,8);
            String s2 = Arrays.toString(arr2);
            System.out.println(s2);
    

    题目06

    请说出下列的输出结果

            String[] stringArray = new String[3]; // 各元素的值默认为null
            for (int i = 0; i < stringArray.length; i++) { // 对各元素进行初始化,但没有赋值。
    //            stringArray[i] = new String();
                System.out.println(stringArray[i]); //空  (有别于null)
            }
    

    题目07

        /*
        回形数格式方阵的实现
        从键盘输入一个整数(1~20)
        则以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中。例如: 输入数字2,则程序输出:
        1 2
        4 3
        输入数字3,则程序输出:
        1 2 3
        8 9 4
        7 6 5
        输入数字4, 则程序输出:
        1   2   3   4
        12  13  14  5
        11  16  15  6
        10   9  8    7
         */
    
            System.out.println("请输入一个整数(1~20):");
            Scanner scanner = new Scanner(System.in);
            int len = scanner.nextInt();
    
            int[][] arr = new int[len][len];
    
            int s = len * len;
            /*
             * k = 1:向右 k = 2:向下 k = 3:向左 k = 4:向上
             */
            int k = 1;
            int i = 0, j = 0;
            for (int m = 1; m <= s; m++) {
                if (k == 1) {
                    if (j < len && arr[i][j] == 0) {
                        arr[i][j++] = m;
                    } else {
                        k = 2;
                        i++;
                        j--;
                        m--;
                    }
                } else if (k == 2) {
                    if (i < len && arr[i][j] == 0) {
                        arr[i++][j] = m;
                    } else {
                        k = 3;
                        i--;
                        j--;
                        m--;
                    }
                } else if (k == 3) {
                    if (j >= 0 && arr[i][j] == 0) {
                        arr[i][j--] = m;
                    } else {
                        k = 4;
                        i--;
                        j++;
                        m--;
                    }
                } else if (k == 4) {
                    if (i >= 0 && arr[i][j] == 0) {
                        arr[i--][j] = m;
                    } else {
                        k = 1;
                        i++;
                        j++;
                        m--;
                    }
                }
            }
    
            // 遍历
            for (int m = 0; m < arr.length; m++) {
                for (int n = 0; n < arr[m].length; n++) {
                    System.out.print(arr[m][n] + "\t");
                }
                System.out.println();
            }
    

    题目08

        /*
        下面数组定义正确的有:
        A.String strs[] = { ‘a’ ‘b’ ‘c’};
        B.String[] strs = {“a”, “b”, “c”};
        C.String[] strs = new String{“a” ”b” ”c”};
        D.String strs[] = new String[]{“a”, “b”, “c”};
        E.String[] strs = new String[3]{“a”, “b”, “c”};
         */
    

    题目09

    写出结果

            String foo = "blue";
            boolean[] bar = new boolean[2];
    //        System.out.println("bar:"+bar);
            if (bar[0]) {
                foo = "green";
            }
            System.out.println(foo);//blue
    

    题目10

        /*
        下面哪个数组定义是错误的
        并对错误的答案加上单行注释,写出错误的原因。
        A,float[]=new float[3]; //没有定义接受变量
        B, float f2[]=new float[];//没有定义一维数组的长度
        C, float[] f1=new float[3];//对
        D, boolean[] b={"true","false","true"};//要求的是Boolean,提供的数据类型是String,把双引号去掉就行
        E, double f4[]={1,3,5}; //对的
        F, int f5[]=new int[3]{2,3,4}; //
        G, float f4[]={1.2F,3.0,5.4};//数据没有后缀F
         */
    

    题目11

        /*
        练习:
        1、从键盘输入本组学员的成绩,放到数组中
        2、用foreach显示所有学员的成绩
        3、排序:从低到高
        4、查找是否有正好60分的,如果有返回位置
        5、复制成绩最低三名构成新数组
        6、用工具类打印成绩最低三名成绩
        */
    
            System.out.println("请先输入本组学员的的个数:");
            Scanner scanner1 = new Scanner(System.in);
            int num = scanner1.nextInt();
            int[] arr = new int[num];
            System.out.println("从键盘输入本组学员的成绩,放到数组中: ");
            for (int i = 0; i < num; i++) {
                Scanner scanner = new Scanner(System.in);
                int score = scanner.nextInt();
                arr[i] = score;
            }
            System.out.println("本组学员的成绩如下:");
            for (int i = 0; i < arr.length; i++) {
                System.out.println(arr[i]);
            }
            System.out.println("============3、排序:从低到高==============");
            Arrays.sort(arr);
            String s = Arrays.toString(arr);
            System.out.println("排序:从低到高" + s);
            System.out.println("============4、查找是否有正好60分的,如果有返回位置==============");
            int index = Arrays.binarySearch(arr, 60);
            if (index < 0) {
                System.out.println("没有正好60分的");
            } else {
                System.out.println("60分的索引位置:" + index);
            }
            System.out.println("===========5、复制成绩最低三名构成新数组===================");
            // 手动复制
    //        int arr1[] = new int[3];
    //        arr1[0] = arr[0];
    //        arr1[1] = arr[1];
    //        arr1[2] = arr[2];
            //Arrays工具类复制
            int[] arr1 = Arrays.copyOfRange(arr, 0, 3);
            System.out.println("========= 6、用工具类打印成绩最低三名成绩=================");
            System.out.println("打印成绩最低三名成绩:  " + Arrays.toString(arr1));
    

    题目12

        /*
        数组赋值练习1
        创建一个char类型的26个元素的数组,分别 放置'A'-'Z'。
        使用for循环访问所有元素并打印出来。
         */
    
            char[] arr = new char[26];
            int j = 65;
            for (int i = 0; i < arr.length; i++) {
                arr[i] = (char) j;
                j++;
            }
            System.out.println("for循环访问所有元素并打印出来: " + Arrays.toString(arr));
    

    题目13

        /*
        数组赋值练习2
        创建一个char类型的36个元素的数组,前26个元素放置'A'-'Z',   后10个元素放置'0'-'9'。
        使用for循环访问所有元素并打印出来。
        提示:char类型数据运算 'A'+1 -> 'B','0'+1 -> '1'
         */
    
            char[] arr = new char[36];
            char var1 = 'A';
            char var2 = '0';
    
            for (int i = 0; i < arr.length; i++) {
                if (i < 26) {
                    arr[i] = var1;
                    var1++;
                } else {
                    arr[i] = var2;
                    var2++;
                }
            }
            System.out.println("for循环访问所有元素并打印出来: " + Arrays.toString(arr));
    

    题目14

        /*
        数组反转:一维数组a[],用java代码将数组元素顺序颠倒
         */
    
            System.out.println("请输入一维数组的长度: ");
            Scanner scanner = new Scanner(System.in);
            int length = scanner.nextInt();
    
            System.out.println("请输入一维数组: ");
            int[] arr = new int[length];
    
            for (int i = 0; i < arr.length; i++) {
                Scanner scanner1 = new Scanner(System.in);
                int num = scanner1.nextInt();
                arr[i] = num;
            }
            System.out.println("原始数组: " + Arrays.toString(arr));
            int temp = 0;
            int len = arr.length;
            for (int i = 0; i < len / 2; i++) {
                temp = arr[i];
                arr[i] = arr[len - 1 - i];
                arr[len - 1 - i] = temp;
            }
            System.out.println("反转后的数组: " + Arrays.toString(arr));
    

    题目15

    用数组求出斐波那契数列的前20项值

            int[] arr = new int[20];
            arr[0] = 1;
            arr[1] = 1;
            for (int i = 2; i < arr.length; i++) {
                arr[i] = arr[i - 1] + arr[i - 2];
            }
            System.out.println("斐波那契数列的前20项值: " + Arrays.toString(arr));
    

    题目16

    对10个整数进行按照从小到大的顺序排序(10大排序算法)

            System.out.println("===========先随机产生10个两位整数==================");
            int[] arr = {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)};
            System.out.println("随机产生10个两位整数: " + Arrays.toString(arr));
            for (int i = 0; i < arr.length - 1; i++) {
                for (int j = 0; j < arr.length - 1 - i; j++) {
                    if (arr[j] > arr[j + 1]) {
                        int temp = arr[j + 1];
                        arr[j + 1] = arr[j];
                        arr[j] = temp;
                    }
                }
            }
            System.out.println("===========冒泡排序==================");
            System.out.println("按照从小到大的顺序排序:" + Arrays.toString(arr));
    

    题目17

       /* 求一个3*3矩阵对角线元素之和
                <提示>程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
        */
    
                    //方式一
            System.out.println("===========先随机产生一个二维数组,每个元素的取值范围在[0,100)之间==================");
            int[][] arr = {{(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)},
                    {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)},
                    {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)}};
            System.out.println("==========打印这个二维数组==============");
    //        System.out.println(Arrays.toString(arr));
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 3; j++) {
                    System.out.print(arr[i][j]+"\t");
    
                }
                System.out.println();
            }
    
            //方式二
            int[][] arr = new int[3][3];
            System.out.println("请从键盘输入一个3*3矩阵:");
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 3; j++) {
                    Scanner scanner = new Scanner(System.in);
                    int num = scanner.nextInt();
                    arr[i][j]=num;
                }
            }
            System.out.println("循环遍历输出这个3*3矩阵:");
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 3; j++) {
                    System.out.print(arr[i][j] + "\t");
    
                }
                System.out.println();
            }
            System.out.println("将a[i][i]累加后输出: " + (arr[0][0] + arr[1][1] + arr[2][2]));
    

    题目18

        /*
        有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
        <提示>程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
         */
    
            int[] arr = {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)};
            Arrays.sort(arr);
            System.out.println("已经排好序的数组: " + Arrays.toString(arr));
            System.out.println("现输入一个数: ");
            Scanner scanner = new Scanner(System.in);
            int num = scanner.nextInt();
    
            int[] newArr = new int[arr.length + 1];
            newArr = Arrays.copyOfRange(arr, 0, newArr.length);
            if (num > arr[arr.length - 1]) {
                newArr[newArr.length - 1] = num;
    
            } else {
                newArr = Arrays.copyOfRange(arr, 0, newArr.length);
                for (int i = newArr.length - 2; i > 0; i--) {
                    if (num > newArr[i]) {
                        int temp = newArr[i+1];
                        newArr[i+1]=num;
                        newArr[i+2]=temp;
    
                        break;
    
                    }
                }
            }
            System.out.println("插入后的数组是:" + Arrays.toString(newArr));
    

    题目19

    /*
    利用随机数生成一个整数数组,数组中有10个元素,每个元素的值都在1-30之间,且要求各个数值不能相同。打印该数组。
     */
    
            System.out.println("随机数生成一个10个元素整数数组:");
    //        int[] arr = {(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1),(int) (Math.random() * 30 + 1)};
            int[] arr = new int[10];
            for (int i = 0; i < arr.length; i++) {
                arr[i] = (int) (Math.random() * 30 + 1);
                for (int j = 0; j < i; j++) {
                    if (arr[i] == arr[j]) {
                        arr[i] = (int) (Math.random() * 30 + 1);
                        break;
                    }
                }
            }
            System.out.println(Arrays.toString(arr));
    

    题目20

        /*
        将一个数组逆序输出。 
        <提示>程序分析:用第一个与最后一个交换。
         */
    
            System.out.println("随机数生成一个10个元素整数数组:");
            int[] arr = {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)};
            System.out.println("原始数组:" + Arrays.toString(arr));
            int len = arr.length;
            for (int i = 0; i < len; i++) {
                for (int j = len-i-1; j > i; j--) {
                    int temp = arr[i];
                    arr[i] = arr[j];
                    arr[j] = temp;
                    break;
                }
            }
            System.out.println("数组翻转:" + Arrays.toString(arr));
    

    题目21

    输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

            System.out.println("随机数生成一个10个元素整数数组:");
            int[] arr = {(int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100)};
            System.out.println("原始数组:" + Arrays.toString(arr));
            int max = arr[0];
            for (int i = 0; i < arr.length; i++) {
                if (max < arr[i]) {
                    max = arr[i];
                    System.out.println("最大的元素是:" + max + " ,下标是:" + i);
                    if (i != 0) {
                        int temp = arr[0];
                        arr[0] = max;
                        max = temp;
                    }
                }
            }
    
            int min = arr[0];
            for (int j = 0; j < arr.length; j++) {
                if (min > arr[j]) {
                    min = arr[j];
                    System.out.println("最小的元素是:" + min + " ,下标是:" + j);
                    if (j != arr.length - 1) {
                        int temp = arr[arr.length - 1];
                        arr[arr.length - 1] = min;
                        min = temp;
                    }
                }
            }
            System.out.println("输出数组: " + Arrays.toString(arr));
    

    题目22

    有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数(循环移位)

    题目23

    定义一个4行4列的二维数组,逐个从键盘输入值,然后将第1行和第4行的数据进行交换,将第2行和第3行的数据进行交换

            System.out.println("4行4列的二维数组,逐个从键盘输入值: ");
            int[][] arr = new int[4][4];
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    Scanner scanner = new Scanner(System.in);
                    int num = scanner.nextInt();
                    arr[i][j]=num;
                }
            }
            System.out.println("遍历输出原始的4行4列的二维数组:");
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j]+"\t");
                }
                System.out.println();
            }
    
            //开始交换数组
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    //将第1行和第4行的数据进行交换
                    if (i==0){
                        int temp = arr[0][j];
                        arr[0][j]=arr[3][j];
                        arr[3][j]=temp;
                    }
                    //将第2行和第3行的数据进行交换
                    if (i==1){
                        int temp = arr[1][j];
                        arr[1][j]=arr[2][j];
                        arr[2][j]=temp;
                    }
                }
            }
    
            System.out.println("遍历输出交换后的4行4列的二维数组:");
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j]+"\t");
                }
                System.out.println();
            }
    

    题目24

    定义一个3行4列的二维数组,逐个从键盘输入值,编写程序将四周的数据清0

            System.out.println("3行4列的二维数组,逐个从键盘输入值: ");
            int[][] arr = new int[3][4];
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 4; j++) {
                    Scanner scanner = new Scanner(System.in);
                    int num = scanner.nextInt();
                    arr[i][j] = num;
                }
            }
            System.out.println("遍历输出原始的3行4列的二维数组:");
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j] + "\t");
                }
                System.out.println();
            }
    
            //四周的数据清0
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 4; j++) {
                    if (i == 0) {
                        Arrays.fill(arr[0], 0);
                    }
                    if (i == 1) {
                        Arrays.fill(arr[1], 0, 1, 0);
                        Arrays.fill(arr[1], 3, 4, 0);
                    }
                    if (i == 2) {
                        Arrays.fill(arr[2], 0);
                    }
                }
            }
            System.out.println("遍历输出交换后的3行4列的二维数组:");
            for (int i = 0; i < 3; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j] + "\t");
                }
                System.out.println();
            }
    

    题目25

    定义一个3行4列的二维数组,逐个从键盘输入值,将左下三角的值清0

    题目26

    定义一个4行4列的二维数组,逐个从键盘输入值,将对角线的值清0

            System.out.println("4行4列的二维数组,逐个从键盘输入值: ");
            int[][] arr = new int[4][4];
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    Scanner scanner = new Scanner(System.in);
                    int num = scanner.nextInt();
                    arr[i][j] = num;
                }
            }
            System.out.println("遍历输出原始的4行4列的二维数组:");
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j] + "\t");
                }
                System.out.println();
            }
    
            //开始将对角线的值清0
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    if (i==0&&j==0){
                        Arrays.fill(arr[0],0,1,0);
                    }
                    if (i==1&&j==1){
                        Arrays.fill(arr[1],1,2,0);
                    }
                    if (i==2&&j==2){
                        Arrays.fill(arr[2],2,3,0);
                    }
                    if (i==3&&j==3){
                        Arrays.fill(arr[3],3,4,0);
                    }
                }
    
            }
    
            System.out.println("遍历输出交换后的4行4列的二维数组:");
            for (int i = 0; i < 4; i++) {
                for (int j = 0; j < 4; j++) {
                    System.out.print(arr[i][j] + "\t");
                }
                System.out.println();
            }
    

    题目27

    定义一个N*N二维数组,从键盘上输入值,找出每行中最大值组成一个一维数组并输出

  • 相关阅读:
    2023高教社杯 国赛数学建模B题思路 - 多波束测线问题
    docker系列(2) - 常用命令篇
    C语言循环结构 for循环
    Express框架---中间件
    大一学生HTML期末作业: 季奥林匹克运动会 8页 无js 带表单 带报告5200字
    Python:SM4
    【中间件】Redis监控以及指标
    自媒体的出现,导致原始企业网站价值越来越小
    如何使用mysql binlog 恢复数据
    数据结构--二叉树(2)
  • 原文地址:https://blog.csdn.net/qq_44807756/article/details/127103809