/**
* 7-1
* 编写字符界面的程序,接受用户输入的若干个正整数,
* -1表示输入结束。
* 使用排序算法将输入的数据降序排序
* 并打印每一次扫描后的结果
* 运行时使用如下不同数据数列观察其执行结果
* 1. 序列中只有一个数据
* 2. 序列中有重复的数据
* 3. 序列中的数据输入的时候按照升序排列
* 4. 序列中的数据输入的时候按照降序排列
**/
import java.util.*; public class Test { public static void main (String[] args) { System.out.println("输入若干整数,以-1结束"); Scanner read = new Scanner(System.in); int s = 0; ArrayList<Integer> array = new ArrayList<Integer>(); while ((s = read.nextInt())!= -1) array.add(s); /*降序排序(使用气泡排序算法),并输出每次扫描后的结果*/ for (int i = 0; i < array.size();i++) { for (int j = 0; j < array.size()-i-1;j++) if(array.get(j)<array.get(j+1)) { int temp1 = array.get(j); int temp2 = array.get(j+1); array.add(j, temp2); array.add(j+1, temp1); } for (int k = 0; k < array.size(); k++) System.out.print(array.get(k)+" "); System.out.println(); } } }
时间: 2024-10-13 10:16:24