输入N个数从小到大排序,C语言解决
时间: 2024-12-23 19:21:34 浏览: 8
用选择法对个数排序由小到大-C++程序设计(谭浩强完整版)
在C语言中,对一组整数进行从小到大的排序,通常可以使用“冒泡排序”、“选择排序”或“插入排序”等简单的排序算法,这里以冒泡排序为例讲解:
```c
#include <stdio.h>
// 冒泡排序函数
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) { // 遍历数组n-1次
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 num[] = {5, 2, 9, 1, 7};
int n = sizeof(num) / sizeof(num[0]); // 获取数组长度
printf("Original array: ");
for (int i = 0; i < n; i++) {
printf("%d ", num[i]);
}
bubble_sort(num, n);
printf("\nSorted array in ascending order: ");
for (int i = 0; i < n; i++) {
printf("%d ", num[i]);
}
return 0;
}
```
在这个程序中,`bubble_sort` 函数通过两层嵌套循环不断比较并交换相邻的数字,直到整个序列有序。
阅读全文