如何用c语言写冒泡算法
以下是用C语言写冒泡排序算法的示例代码:
#include <stdio.h>
void bubble_sort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[] = {5, 2, 8, 3, 1};
int n = sizeof(arr) / sizeof(arr[0]);
bubble_sort(arr, n);
printf("排序后的数组:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
在这个示例代码中,我们定义了一个名为bubble_sort的函数,该函数接受一个整数数组和数组的大小作为参数。该函数使用嵌套循环来遍历数组元素,并在每次遍历时比较相邻的元素。如果前一个元素大于后一个元素,则交换它们的位置。通过这种方式,我们可以逐个遍历数组并将最大的元素放在数组的最后。我们重复这个过程,直到整个数组按照升序排列。
在main函数中,我们定义了一个整数数组arr并初始化它。我们还计算了数组的大小,并将其作为参数传递给bubble_sort函数。最后,我们打印排序后的数组,以验证算法是否正确工作。
原文地址: https://www.cveoy.top/t/topic/blTi 著作权归作者所有。请勿转载和采集!