旗帜软件工作室Java第一阶段考核答案

一、选择题(共五小题,每小题5分)

1、D
2、C
3、D
4、D
5、D

二、排序(10分)

public class test01 {
    
    
    public static void main(String[] args) {
    
    
        int [] arr = {
    
    31, 79, 152, 7, 64, 197, 66, 101, 30, 38,
                      2, 51, 144, 135, 47, 179, 14, 23, 75, 6,
                      181, 20, 183, 199, 96, 108, 98, 188, 84,
                      166, 1, 113, 106, 87, 93, 39, 154, 146, 154,
                      27, 44, 96, 37, 174, 127, 131, 79, 181, 115,
                      195, 133, 132, 81, 169, 17, 114, 29, 50, 128,
                      156, 199, 132, 180, 85, 194, 37, 5, 195, 139,
                      108, 26, 178, 107, 22, 75, 130, 71, 28, 119,
                      43, 114, 180, 4, 102, 109, 12, 110, 58, 69,
                      173, 66, 185, 43, 3, 11, 151, 41, 145, 166, 121};

        //        方法一:冒泡排序
        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 x = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] =x;
                }
            }
        }



//        方法二:选择排序
//        for (int i = 0; i < arr.length-1; i++) {
    
    
//            int x = i;
//            for (int j = i+1; j < arr.length; j++) {
    
    
//                if (arr[j]<arr[x]){
    
    
//                    x = j;
//                }
//            }
//            int tem = arr[i];
//            arr[i] = arr[x];
//            arr[x] = tem;
//        }

        for (int i = 0; i < arr.length; i++) {
    
    
            System.out.println(arr[i]);
        }

    }
}

三、图形题(共25分)

public class test02 {
    
    
    public static void main(String[] args) {
    
    
        for (int i=0;i<15;i++){
    
    
            for (int z = 0;z<i;z++){
    
    
                System.out.print(" ");
            }
            for (int j = i*2;j<15*2-1;j++){
    
    
                System.out.print("*");
            }

            System.out.println();
        }
    }
}

public class test03 {
    
    
    public static void main(String[] args) {
    
    
        Scanner input = new Scanner(System.in);
        System.out.print("请输入:");
        int x = input.nextInt();
        // 菱形上半部分
        for (int i=0;i<x;i++){
    
    
            for (int z = i;z<x-1;z++){
    
    
                System.out.print("\t");
            }
            for (int j =0;j<=i*2;j++){
    
    
                System.out.print("*"+"\t");
            }
            System.out.println();
        }
        // 菱形下半部分
        for (int i=1;i<x;i++){
    
    
            for (int z = 0;z<i;z++){
    
    
                System.out.print("\t");
            }
            for (int j = i*2;j<x*2-1;j++){
    
    
                System.out.print("*"+"\t");
            }

            System.out.println();
        }
    }
}

四、算法题(共40分)

public class Test04 {
    
    
    public static void main(String[] args) {
    
    
        int [] list1 = new int[50];
        int [] list2 = new int[50];
        int [] list3 = new int[50];
        int x1 = 0;
        int x2 = 0;
        int x3 = 0;

        for(int i=1;i<=100;i++) {
    
    
            if(i%3==0&&i%5!=0) {
    
    
                list1[x1] = i;
                x1++;
            }
            else if(i%5==0&&i%3!=0) {
    
    
                list2[x2] = i;
                x2++;
            }
            else if(i%5==0&&i%3==0) {
    
    
                list3[x3] = i;
                x3++;
            }
        }
        System.out.println("“Flip”的元素为:");
        for (int i = 0; i < x1; i++) {
    
    
            System.out.print(list1[i]+", ");
        }
        System.out.println();
        System.out.println("“Flop”的元素为:");
        for (int i = 0; i < x2; i++) {
    
    
            System.out.print(list2[i]+", ");
        }
        System.out.println();
        System.out.println("“FlipFlop”的元素为:");
        for (int i = 0; i < x3; i++) {
    
    
            System.out.print(list3[i]+", ");
        }
    }
}
public class test05 {
    
    
    public static void main(String[] args) {
    
    
        System.out.print("请输入一个数字:");
        Scanner input = new Scanner(System.in);
        int x = input.nextInt();
        int y = 0;
        int w = x;
        if (x<0){
    
    
            System.out.println(false);
            return;
        }
        while (x!= 0){
    
    
            int z = x%10;
            y = z + y*10;
            x /= 10;
        }
        if (y == w){
    
    
            System.out.println(true);
        }else {
    
    
            System.out.println(false);
        }
    }
}

public class Test08 {
    
    
    public static void main(String[] args) {
    
    
        int [] nums = {
    
    11,25,30,40,33,90,100};
        Scanner input = new Scanner(System.in);
        System.out.print("请输入target的值:");
        int target = input.nextInt();
        for (int i = 0; i < nums.length-1; i++) {
    
    
            for (int j = i+1; j < nums.length; j++) {
    
    
                if (nums[i]+nums[j]==target){
    
    
                    System.out.println("["+i+","+j+"]");
                    return;
                }
            }
        }
        System.out.println("数组中无符合结果的值。");
    }
}

附加题(100分,不计入总成绩)

public class Test09 {
    
    
    public static void main(String[] args) {
    
    
        int x = 2020;
        int y = 0;
        for (int i = 1;i<=x;i++){
    
    
            int w = i;
            while (w!= 0){
    
    
                int z = w%10;
                if (z==2){
    
    
                    y++;
                }
                w /= 10;
            }
        }
        System.out.println(y);
    }
}

猜你喜欢

转载自blog.csdn.net/qq_52006948/article/details/121146123