Java冒泡排序代码问题

时间:2016-03-28 18:16:37

标签: java arrays sorting

编写一个计算机程序,提示用户输入一个数字,为​​该数量的随机整数创建一个数组,然后使用冒泡排序对数组进行排序。程序应该在调用排序算法之前打印出数组,之后打印出来。

我有大部分冒泡排序工作,它只是对数组大小的随机整数和用户输入的实现,我似乎无法弄清楚。

    import java.util.*;
    import java.lang.*;
    import java.io.*;
    import java.util.Random;

    class Test
    {
    public static void main (String[] args) throws java.lang.Exception
    {
       int n, c, d, swap;
       Scanner in = new Scanner(System.in);
       Random r = new Random();

       System.out.println("enter number of elements to sort");
       n = r.nextInt();

       int array[] = new int[n];

       for (c = 0; c < n; c++)
       array[c] = r.nextInt();

        for (c = 0; c < ( n - 1 ); c++) {
          for (d = 0; d < n - c - 1; d++) {
           if (array[d] > array[d+1])        {
            swap       = array[d];
            array[d]   = array[d+1];
            array[d+1] = swap;
            }
           }
          }

      System.out.println("Sorted array :");

      for (c = 0; c < n; c++)
      System.out.println(array[c]);
     }
    }

1 个答案:

答案 0 :(得分:0)

您没有正确使用扫描仪。你应该有n = in.nextInt();