冒泡排序:即对一组数据,不断的两两比较,直到最后达到想要的排序;
例题:
具体实现:
#include <stdio.h>
int main() {
int n,temp;
int arr[10];
for (int i = 0; i < 10; i++) { //给数组赋值
scanf("%d", &n);
arr[i] = n;
}
for (int i = 0; i < 9; i++) { //外层循环,10个数的数组,只需要遍历10 - 1 次
int flag = 0; //判断所给数据是否符合要求的排序顺序
for (int j = 0; j < 9 - i; j++) { //内循环,每一次遍历内数据两两比较
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
flag = 1;
}
}
if (flag == 0)
break;
}
for (int i = 0; i < 10; i++) {
printf("%d\n", arr[i]);
}
return 0;
}
运行结果: