#include<iostream>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
int i,j,t,flag=1;
if(n==0)
exit(0);
else
{
int*a=new int[n];
int*b=new int[n];
for(i=0;i<n;i++)
cin>>a[i];
for(i=0;i<(n-1);i++)
for(j=0;j<(n-1);j++)
{
if(a[j]<0)//对数组数据的正负进行不同处理并存入另一个数组
b[j]=-a[j];
else
b[j]=a[j];
if(a[j+1]<0)
b[j+1]=-a[j+1];
else
b[j+1]=a[j+1];
if(b[j]<b[j+1])
{
t=a[j];//交换时依旧用原数组交换
a[j]=a[j+1];
a[j+1]=t;
}
}
for(i=0;i<n;i++)
{
if(flag)//利用flag控制一行的最后一个空格不输出
{
flag=0;
cout<<a[i];
}
else
cout<<' '<<a[i];
}
cout<<endl;
delete []a;//记得撤销两个空间
delete []b;
}
}
return 0;
}
杭电ACM2020C++
最新推荐文章于 2023-02-09 00:03:39 发布