---
# System prepended metadata

title: C語言題庫-073

---

# C語言題庫-073
有一浮點型數組A, 用C 語言寫一函數實現對浮點
數組A進行降序排序,並輸出結果,要求要以數組A 作爲
函數的入口.( 建議用冒泡排序法)
【參考答案】
```
void BubbleSort(double a rr[], int n)
{
int i，j ；
int e xchange = 1 ；// 交換標誌
for(i=1;i<n;i++)
{ // 最多做n-1趟排序
exchange=0 ；// 本趟排序開始前，交換標誌應爲假
for(j=n-1;j>=i ；j–) //對當前無序區R[i…n]自下向上掃描
if(arr[j+1] > arr [ j])
{// 交換記錄
arr[0]=arr[j+1]；//R[0]不是哨兵，僅做暫存單元
arr[j+1]=arr[j]；
arr[j]=arr[0]；
exchange=1 ；// 發生了交換，故將交換標誌置爲真
}
if(!exchange) // 本趟排序未發生交換，提前終止算法
return ；
} //endfor(外循環)
}
```
