- 算法思路:
- 冒泡排序实质是通过每次交换来将当前排序序列的最大元素移动到另外一端
- 代码如下:
#include<stdio.h> int main() { int a[10]; //对数组进行初始化 for(int i = 0; i < 10; i++ ) { scanf("%d", &a[i]); } for(int i = 1; i <= 9; i++) { //进行n-1趟排序 //第i趟从a[0]到a[n-i-1]都与它们下一个数进行比较 /* 注:第一趟a[0]到a[8]都需要与下一个数进行比较,第二趟a[0]到a[7]都需要与下一个数进行比较, 以此类推,第i趟从a[0]到a[n-i-1]都与它们下一个数进行比较 */ for(int j = 0; j < 10 - i; j++) { if(a[j] > a[j + 1]) { //左边的数比右边大,则交换。 int temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } //打印排序后的结果 for(int i = 0; i < 10; i++) { printf("%d\t", a[i]); } return 0; }
冒泡排序算法实现
最新推荐文章于 2023-04-02 13:45:28 发布