实验要求
输入要求
-
多组输入
-
每组数据首先输入一个整数n(0<n<100),然后输入n个待排序的整数
输出要求
- 每组数据输出n-1行,表示算法中n-1次扫描并交换的结果。
例子
输入
7
2 6 -4 3 1 0 9
输出
-4 2 6 0 3 1 9
-4 0 2 6 1 3 9
-4 0 1 2 6 3 9
-4 0 1 2 3 6 9
-4 0 1 2 3 6 9
-4 0 1 2 3 6 9
注意:每个数字后面均有一个空格
源码
#include <stdio.h>
#include <iostream>
using namespace std;
void BubbleSort(int a[],int n){
int i,j,k;
for(i=0;i<n-1;i++){
for(j=n-1;j>=i;j--){
if(a[j]<a[j-1]){
swap(a[j],a[j-1]);
}
if(j==1) break;
}
for(k=0;k<n;k++){
cout << a[k] << " ";
}
cout << endl;
}
}
int main(){
int n;
while(cin >> n){
int i,a[n];
for(i=0;i<n;i++){
cin >> a[i];
}
BubbleSort(a,n);
}
return 0;
}