代码:
#include<iostream> #include<cstring> #include<fstream> #include<algorithm> using namespace std; int n,a[50]; void print(int* a) { cout<<a[0]; for(int i=1; i<n; i++) cout<<" "<<a[i]; cout<<endl; } void Arrange(int* a) { print(a); for(int i=n-2; i>=0; i--) for(int j=n; j>=i+1; j--) if(a[i]<a[j]) { int temp=a[j]; for(int k=j; k>i; k--) a[k]=a[k-1]; a[i]=temp; sort(a+i+1,a+n); Arrange(a); } } int main() { //freopen("in","r",stdin); //freopen("out","w",stdout); while(cin>>n&&n) { for(int i=0; i<n; i++) cin>>a[i]; sort(a,a+n); Arrange(a); cout<<endl; } }
运行结果:(文件输入)