//2015/07/07 //Java數組小小練習題 /* 3. 寫一個函數,計算一個整數數組的平均值 4. 自定義一個整數數組a,讀入一個整數n,如果n 在數組中存在,則輸出n 的下標;如果不存在,則輸出-1。 5. 給定一個數組,輸出數組中的最大值和最小值 6. *給定一個數組,把這個數組中所有元素順序進行顛倒。 7. *完成數組的冒泡排序算法:給定一個數組:int[] a = {1,3,2,7,5},利用冒泡排序對其按照從小到大的順序排序,然后輸出結果。 8. *使用第二種算法對數組進行排序 注:每一題都被函數封裝起來了 */ package Chp5; public class ArrayTest { //Three 計算數組的平均值 public void Average(int[] array) { System.out.println("第3題"); int len = array.length; int average = 0; int sum = 0; for(int i = 0;i<len;i++) { sum+=array[i]; } average = sum/len; System.out.println("數組的平均值為:"+average); } //第四題:自定義一個整數數組a,讀入一個整數n public void IsExit(int[] array,int num) { System.out.println("第4題"); int len = array.length; boolean bl = false; for(int i = 0;i<len;i++) { if(array[i] == num) { System.out.println("該數存在於數組中,下標為:"+i); bl = true; } } if(bl == false) { System.out.println(-1); } } //5題:求數組中的最大值和最小值 public void GetMaxMin(int[] array) { System.out.println("第5題"); int len = array.length; int temp; for(int i = 0;i<len;i++) { for(int j = 0;j<len-i-1;j++) { if(array[j]>array[j+1]) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } System.out.println("數組最大值為:"+array[len-1]); System.out.println("數組最小值為:"+array[0]); } //第6題:給定一個數組,把這個數組中所有元素順序進行顛倒。 public void UpDownLocation(int[] array) { System.out.println("第6題"); int len = array.length; int temp = 0; for(int i = 0;i<len;i++) { temp = array[len-1]; array[len-1] = array[i]; array[i] = temp; len--; } } /////////////////////////// public void PrintArray(int[] array) { int len = array.length; for(int i = 0;i<len;i++) { System.out.print(array[i]+" "); } System.out.println(); } /////////////////////////// //第7題:按照從小到大的順序排序,然后輸出結果 public void BubbleSort(int[] array) { System.out.println("第7題"); int len = array.length; int temp; for(int i = 0;i<len;i++) { for(int j = 0;j<len-i-1;j++) { if(array[j]>array[j+1]) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } } //第8題:用第二種算法對數組進行排序 public void MyChoiceSort(int array[]) { System.out.println("第8題"); int len = array.length; int temp; for(int i = 0;i<len;i++) { for(int j = i+1;j<len;j++) { if(array[i]>array[j]) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } } public static void main(String[] args) { ArrayTest Myarray = new ArrayTest(); //// int[] array ={8,4,6,2,2,6,4,8}; Myarray.Average(array); //// Myarray.IsExit(array, 5); /// Myarray.GetMaxMin(array); /// Myarray.UpDownLocation(array); Myarray.PrintArray(array); /// Myarray.BubbleSort(array); Myarray.PrintArray(array); /// Myarray.MyChoiceSort(array); Myarray.PrintArray(array); } }