有一个数组 3 7 5 0 2 9 8,用冒泡法对它排序,要求写出每一趟排序的结果。

有一个数组 3 7 5 0 2 9 8,用冒泡法对它排序,要求写出每一趟排序的结果。

3 7 5 0 2 9 8
3 5 0 2 7 8 9
3 0 2 5 7 8 9
0 2 3 5 7 8 9

你没有说是按照从大到小还是从小到大顺序

冒泡网上一搜就出来了啊

# include <stdio.h>
# define N 7

void bubble_sort(int a[], int n)//n为数组a的元素个数
{
    int i, j, temp;
    for(j=0; j<n-1; j++)
        for(i=0; i<n-1-j; i++) {
            if(a[i]>a[i+1]) {//数组元素大小按升序排列
                temp=a[i];
                a[i]=a[i+1];
                a[i+1]=temp;
            }
        }
}

int main(void) {
    int array[N] = {3, 7, 5, 0, 2, 9, 8};
    int i;

    bubble_sort(array, N);
    for (i=0; i<N; i++) {
        printf("%2d", array[i]);
    }

    return 0;
}

public static void main(String[] args){
int[] values={3, 7, 5, 0, 2, 9, 8};
double_sort(values);
}

  public static void double_sort(int[] values){

    int temp;
    int n = 0;
    for(int i=0;i<values.length;i++){//趟数
      for(int j=0;j<values.length-i-1;j++){//比较次数

        if(values[j]>values[j+1]){

          temp=values[j];

          values[j]=values[j+1];

          values[j+1]=temp;
        }

      }
      n++;
      System.out.println("第 "+n+" 次排序-----");
       for(int k=0;k<values.length;k++){
           System.out.print(values[k]+",");
       }
       System.out.println();
    }

  }
    输出
    第 1 次排序-----

3,5,0,2,7,8,9,
第 2 次排序-----
3,0,2,5,7,8,9,
第 3 次排序-----
0,2,3,5,7,8,9,
第 4 次排序-----
0,2,3,5,7,8,9,
第 5 次排序-----
0,2,3,5,7,8,9,
第 6 次排序-----
0,2,3,5,7,8,9,
第 7 次排序-----
0,2,3,5,7,8,9,