從鍵盤鍵入15個整數,用氣泡法對其按升序排序,然後求最大值,最小值,中位數以及平均值
阿新 • • 發佈:2020-11-20
1 #include<stdio.h> 2 #include<math.h> 3 int main() { 4 int ze,pingjun=0,he=0; 5 int a[20]; 6 for (int i = 1; i <= 15; i++) { 7 scanf("%d", &a[i]);//利用for迴圈依次輸入資料到陣列中 8 he = he + a[i];//利用這個for迴圈順便計算所有數的和,方便以後計算平均值使用 9 } 10 for(int i=1; i<=15View Code; i++) 11 for (int j = 1; j <= i; j++) 12 if (a[i] < a[j]) { 13 ze = a[i]; 14 a[i] = a[j]; 15 a[j] = ze; 16 }/*氣泡法實質上就是挨著個列舉每一個數,然後和每一個數進行比較, 17 如果滿足條件就交換兩個數的位置,這樣 依次比較完所有的數後來順序也就排好了 18 注:冒泡法由於是挨著個列舉,因此耗時會很大,在正式比賽中很少會用到冒泡演算法*/ 19 pingjun = he / 15;//求平均值 20 for(int i=1; i<=15; i++) printf("%d ",a[i]);//依次輸出排序後的每一個數 21 printf("\n");//換行(為了美觀) 22 printf("最大值為:"); 23 printf("%d\n",a[15]) ;//由於排好序了,因此15號的數就是最大的 24 printf("最小值為:"); 25 printf("%d\n",a[1]) ;//由於排好序了,因此1號的數就是最小的 26 printf("中位數為:");27 printf("%d\n",a[7]) ; 28 printf("平均值為:"); 29 printf("%d\n",pingjun) ; 30 return 0; 31 }