编写一个计算机程序,提示用户输入一个数字,为该数量的随机整数创建一个数组,然后使用冒泡排序对数组进行排序。程序应该在调用排序算法之前打印出数组,之后打印出来。
我有大部分冒泡排序工作,它只是对数组大小的随机整数和用户输入的实现,我似乎无法弄清楚。
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]);
}
}
答案 0 :(得分:0)
您没有正确使用扫描仪。你应该有n = in.nextInt();