第一趟
第一次:28 36 19 2 23
第二次:28 19 36 2 23
第三次:28 19 2 36 23
第四次:28 19 2 23 36
第二趟
第一次: 19 28 2 23 36
第二次: 19 2 28 23 36
第三次: 19 2 23 28 36
第三趟
第一次:2 19 23 28 36
第二次:2 19 23 28 36
第四趟
第一次:2 19 23 28 36
n个元素 需要比较n-1趟, 每趟=数组个数 - 趟数
微代码如下
#include<stdio.h> int main() { int i,j,temp; int a[5]={28,36,19,2,23}; for(j=0;j<=9;j++) { for (i=0;i<4-j;i++) if (a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp;} } for(i=0;i<5;i++) printf("%3d",a[i] ); printf("\n"); }