c语言冒泡n个数从小到大排序
时间: 2023-11-24 14:08:41 浏览: 117
c语言冒泡法,从小到大排列
以下是C语言冒泡排序n个数从小到大排序的代码:
```c
#include <stdio.h>
int main() {
int n, i, j, temp;
printf("请输入要排序的个数:");
scanf("%d", &n);
int a[n];
printf("请输入%d个数:\n", n);
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - 1 - i; j++) {
if (a[j] > a[j+1]) {
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
printf("排序后的结果为:\n");
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
代码解释:
1. 首先通过输入要排序的个数n来定义一个长度为n的数组a。
2. 接着通过循环输入n个数到数组a中。
3. 然后使用两个循环来进行冒泡排序,外层循环i从0到n-1,内层循环j从0到n-1-i,每次比较相邻的两个数,如果前面的数大于后面的数,就将它们交换位置,直到最后一个数。
4. 最后输出排序后的结果。
注意:
1. 冒泡排序的时间复杂度为O(n^2),对于大量数据的排序效率较低。
2. 在输入数字时,需要保证输入的数字个数不超过数组的长度n。
阅读全文