本帖最后由 jxh 于 2017-12-22 10:18 编辑
[Java] 纯文本查看 复制代码 //package tank;
import java.util.*;
public class Start{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("你要输入多少数字进行排序:");
int num=in.nextInt();
int [] a=new int[num];//创建一个数组
for(int i=0;i<a.length;i++){
System.out.println("输入第"+(i+1)+"个数。");
a[i]=in.nextInt();
}
for(;;){
System.out.println("你想要什么排序?输入1为降序排序,2为升序排序。");
int select=in.nextInt();
switch(select){
case 1:
for(int i=0;i<a.length-1;i++){ //降序排列
for(int j=a.length-1;j>0;j--){
if(a[j]>a[j-1]){
int t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
}
break;
case 2:
for(int i=0;i<a.length-1;i++){ //升序排列
for(int j=a.length-1;j>0;j--){
if(a[j]<a[j-1]){
int t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
}
break;
}
System.out.println("排好的顺序为:");
// for(int i=0;i<a.length;i++){
// System.out.println(a[i]);
// }
//使用foreach 遍历数组
// for(元素类型t 元素变量x : 遍历对象obj){
// 引用了x的java语句;
// }
for (int i : a) {
System.out.println(i);//逐个输出数组元素的值
}
System.out.println("还要看看另一种排序吗?想,输入y,否则n退出。");
String other=in.next();
if(other.equals("y")){
continue;//使用关键字 返回到 for循环开头
}else{
break;//跳出for循环
}
}//外层 for End
}
}
改好了 应该没有BUG 麻烦评分一下 给点CB |