0
#include<bits/stdc++.h>
using namespace std;
int b[50005];
int main()
{
int n;
double a;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a;
a=a+10;
b[(int)(a+10)*1000]++;
}
for(int i=1000;i>=1;i--)
for(int j=1;j<=b[i];j++)
{
cout<<(double)(i-10)/1000<<" ";
}
return 0;
}

0
0
for(int i=1;i<=n;i++)
{
cin>>b;
b=b+10;
a[int(b*1000)]++;
}
排序!
for(int i=50000;i>=1;i--)
{
for(int j=1;j<=a[i];j++)
{
printf("%.2f ",double(i/1000.0-10.0));
}
}
输出
王远哲在2019-06-09 15:45:14追加了内容
卫老同学,额。。。。你输出时循环1000到1是什么意思,错误太多,看看我的部分代码,输出printf的(double)也错了。自己看看,不要负周老师的苦心呀,那天我被禁言了,不能回答救你。实在抱歉
王远哲在2019-06-09 15:46:08追加了内容
cout<<(double)(i-10)/1000<<" ";
的顺序错了
王远哲在2019-06-09 15:46:15追加了内容
cout<<(double)(i-10)/1000<<" ";
的顺序错了
0
0
0
0
0

