需要此程序使用扫描器类中的用户输入的排序方法运行实际数组

时间:2016-04-12 03:33:07

标签: java arrays sorting

此代码正在运行但不包括排序结果。我试图从Scanner获取输入,然后打印出一些函数的结果来输入数字,如sort,min,max和average。

public class Arrayassignment {

    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);

        System.out.println("Enter an intiger for array size.");

        int number = keyboard.nextInt();

        int array[] = new int[number];

        System.out.println("Array size " + number + " initiated.\n");

        System.out.println("Now enter the array intigers.");

        for (int index = 0; index < number; index++)

        {
            array[index] = keyboard.nextInt();
        }
        keyboard.close();

        System.out.println("Sorting ");

        int[] sortedArray = sort(array);
        // System.out.println(Arrays.toString(sortedArray));
        // printing the sorted array
        System.out.println("Sorted array not working " + sortedArray);
        System.out.println("The highest number in the array is " + max(array));
        System.out.println("The smallest number in the array is " + min(array));
        System.out.println("The average of the numbers in the array is " + avg(array));
    }

    public static int[] sort(int[] arg) {

        int arrange;
        for (int i = 0; i < arg.length - 1; i++)
            for (int j = i + 1; j < arg.length; j++) {

                if (arg[i] > arg[j]) {
                    arrange = arg[i];
                    arg[i] = arg[j];
                    arg[j] = arrange;

                }
            }
        return arg;
    }

    public static int max(int[] arg) {
        if (arg.length == 0) {
            System.out.println(" empty arguement list ");
            return 0;
        }
        int largest = arg[0];
        for (int i = 1; i < arg.length; i++) {
            if (arg[i] > largest)
                largest = arg[i];
        }
        return largest;
    }

    public static int min(int[] arg) {
        if (arg.length == 0) {
            System.out.println(" empty arguement list ");
            return 0;
        }
        int smallest = arg[0];
        for (int i = 1; i < arg.length; i++) {
            if (arg[i] < smallest)
                smallest = arg[i];
        }
        return smallest;
    }

    public static double avg(int... arr) {
        int sum = 0;
        for (int i = 0; i < arr.length; i++) {
            sum += arr[i];
        }
        double average = (double) sum / arr.length;
        return average;

    }
}

0 个答案:

没有答案