对于给定的含有n个元素的数组a,对其按元素值递增排序。(利用冒泡排序法)c语言
时间: 2024-10-10 19:13:04 浏览: 47
c语言学习-排序详解完整.pptx
在C语言中,可以使用冒泡排序算法对给定的n个整数数组进行递增排序。冒泡排序是一种简单的比较型排序算法,它重复地遍历数组,一次比较两个元素,如果它们的顺序错误就把它们交换过来,直到没有任何一对数字需要交换为止。
下面是一个基本的冒泡排序算法的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 - 1 - i; j++) { // 内层循环完成相邻元素的比较和交换
if (arr[j] > arr[j + 1]) {
// 如果当前元素大于下一个元素,则交换位置
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// 测试函数
int main() {
int a[] = {64, 34, 25, 12, 22, 11, 90}; // 假设这是输入数组
int n = sizeof(a) / sizeof(a[0]);
printf("原始数组: ");
for (int i = 0; i < n; i++)
printf("%d ", a[i]);
bubbleSort(a, n);
printf("\n升序排序后的数组: ");
for (int i = 0; i < n; i++)
printf("%d ", a[i]);
return 0;
}
```
这个程序首先定义了一个`bubbleSort`函数,然后在`main`函数中创建一个测试数组,并调用这个函数对其进行排序。运行结果会显示出原始数组和排序后的数组。
阅读全文