當前位置:編程學習大全網 - 編程語言 - C語言編寫壹個排序函數(對壹維數組排序)並在主函數中調用

C語言編寫壹個排序函數(對壹維數組排序)並在主函數中調用

以下是壹個使用C語言編寫壹維數組排序函數並在主函數中調用的示例代碼,采用的是從小到大排序的方式,可以根據需要進行修改:

```c

#include <stdio.h>

// 排序函數,參數為待排序數組和數組長度

void sort(int arr[], int len) {

int i, j, tmp;

// 冒泡排序

for (i = 0; i < len - 1; i++) {

for (j = 0; j < len - i - 1; j++) {

if (arr[j] > arr[j + 1]) { // 相鄰元素比較,如果前面的大於後面的,則交換位置

tmp = arr[j];

arr[j] = arr[j + 1];

arr[j + 1] = tmp;

}

}

}

}

int main() {

int arr[] = { 3, 1, 5, 7, 2, 4, 6 };

int len = sizeof(arr) / sizeof(int);

int i;

// 輸出排序前的數組

printf("排序前:

");

for (i = 0; i < len; i++) {

printf("%d ", arr[i]);

}

printf("

");

// 調用排序函數進行排序

sort(arr, len);

// 輸出排序後的數組

printf("排序後:

");

for (i = 0; i < len; i++) {

printf("%d ", arr[i]);

}

printf("

");

return 0;

}

```

在上面的代碼中,我們定義了壹個`sort`函數,實現了壹維數組排序,並接受待排序數組和數組長度為參數。排序的算法采用的是冒泡排序,每次比較相鄰元素的大小並交換它們的位置,直到排序完成。

在主函數中,我們聲明了壹個待排序的壹維數組`arr`,並計算了數組長度。然後,我們輸出了排序前的數組,並調用`sort`函數進行排序。最後,我們輸出排序後的數組。

需要註意的是,排序函數的實現方式可以有多種,根據實際需求和數據類型的不同,選擇合適的排序算法可以提高排序的效率和準確性。在調用排序函數時,需要確保輸入的參數正確和合法,避免出現數組越界等錯誤。

  • 上一篇:紹興有幾個區幾個縣
  • 下一篇:租賃管理課程目的
  • copyright 2024編程學習大全網