求教排序????????????????????
package com.text;
import java.util.Scanner;
public class MaxMin {
?public static void main(String[] args) {
int [] nums=new int[10];
int max=nums[0];//假設第一個數為最大數;
int ag=0;
Scanner sc=new Scanner(System.in);
System.out.println("請輸入十個數:");
for(int i=0;i<nums.length;i++){
System.out.print("請輸入第"+(i+1)+"個數:");
nums[i]=sc.nextInt();
//比較出最大數
if(nums[i]>max){
max=nums[i];
}
}
int min=nums[0];//假設第一個數為最小數;
for(int k=0;k<nums.length;k++){
if(nums[k]<min){
min=nums[k];
}
}
int a=0;
for(;a<nums.length;a++){
if(nums[a]<nums[a+1]){
int re=nums[a];
nums[a]=nums[a+1];
nums[a+1]=re;
}
}
System.out.println("最大值:"+max);
System.out.println("最小值:"+min);
System.out.println(nums[a]);//排序
}
}
2015-05-22
上面的排序就是升序的算法,你要求降序只需要將if(nums[m]>nums[n])改成if(nums[m]<nums[n])即可
2015-05-22
package com.demo;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
int count=10;
int[] nums=new int[count];
//定義一個中間 變量
int temp=0;
Scanner sc=new Scanner(System.in);
System.out.println("請輸入10個數字:");
//給數組初始化值
for(int i=0;i<nums.length;i++){
System.out.println("請輸入第"+(i+1)+"個數字:");
nums[i]=sc.nextInt();
}
//排序
for(int m=0;m<nums.length-1;m++){
for(int n=m+1;n<nums.length;n++){
if(nums[m]>nums[n]){
temp=nums[m];
nums[m]=nums[n];
nums[n]=temp;
}
}
}
//輸出
System.out.println("排序后的數組值為:");
for(int j=0;j<nums.length;j++){
System.out.print(nums[j]+" ? ");
}
}
}
2015-05-20
import java.util.Arrays ? ? ?直接用Arrays.sort(nums); ?不就好了嗎?