#include<stdio.h> int main() { int i, j, temp; int a[] = {8, 6, 1, 9, 2}; int n = 5; // 第一次循环,从第一个元素开始比较,依次比较两两相邻的元素,大的放后面 printf("第一次:"); for (i = 0; i < n-1; i++) { if (a[i] < a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } for (i = 0; i < n; i++) { printf("%d ", a[i]); } printf("\n"); // 第二次循环,从第一个元素开始比较,依次比较两两相邻的元素,大的放后面 printf("第二次:"); for (i = 0; i < n-1; i++) { if (a[i] < a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } for (i = 0; i < n; i++) { printf("%d ", a[i]); } printf("\n"); // 第三次循环,从第一个元素开始比较,依次比较两两相邻的元素,大的放后面 printf("第三次:"); for (i = 0; i < n-1; i++) { if (a[i] < a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } for (i = 0; i < n; i++) { printf("%d ", a[i]); } printf("\n"); // 第四次循环,从第一个元素开始比较,依次比较两两相邻的元素,大的放后面 printf("第四次:"); for (i = 0; i < n-1; i++) { if (a[i] < a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } for (i = 0; i < n; i++) { printf("%d ", a[i]); } printf("\n"); // 第五次循环,从第一个元素开始比较,依次比较两两相邻的元素,大的放后面 printf("第五次:"); for (i = 0; i < n-1; i++) { if (a[i] < a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; } } for (i = 0; i < n; i++) { printf("%d ", a[i]); } printf("\n"); return 0; } // 排序结果 9 8 6 2 1