使用C语言冒泡排序实现
时间: 2023-06-05 09:05:31 浏览: 71
Sure, I can help you with that. Here is an example of a bubble sort algorithm implemented in C:
```
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;
}
}
}
}
```
You can call this function and pass it an integer array and its length as arguments, and it will sort the array in ascending order using the bubble sort algorithm.
相关问题
c语言冒泡排序实现降序
在C语言中,实现冒泡排序算法以达到降序排列通常需要对标准的升序冒泡排序稍作修改。下面是简单的冒泡降序排序的示例代码:
```c
#include <stdio.h>
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) { // 遍历所有数组元素
for (int j = 0; j < n - i - 1; j++) { // 每轮比较都减少已排序部分的元素数
if (arr[j] < arr[j + 1]) { // 如果当前元素小于下一个元素
// 交换它们的位置
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[] = {5, 8, 2, 6, 9, 1};
int n = sizeof(arr) / sizeof(arr[0]);
printf("原始数组:\n");
for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
bubbleSort(arr, n);
printf("\n降序排序后的数组:\n");
for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
return 0;
}
```
C语言冒泡排序算法实现
冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。具体实现可以参考以下C语言代码:
```
void bubbleSort(int arr[], int n) {
int i, j;
for (i = 0; i < n-1; i++) {
for (j = 0; j < n-i-1; j++) {
if (arr[j] > arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
以上代码中,`arr`是待排序的数组,`n`是数组的长度。在每一轮循环中,比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置。经过多轮循环后,数组就被排序完成了。
阅读全文