题目网址:信息学奥赛一本通(C++版)在线评测系统
题目介绍:
2039:【例5.6】冒泡排序
时间限制: 1000 ms 内存限制: 65536 KB
提交数:70375 通过数: 38775
【题目描述】
编程输入n(1≤n≤20)�(1≤�≤20)个小于10001000非负整数,然后自动按从大到小的顺序输出。(冒泡排序)
【输入】
第一行,数的个数n�;
第二行,n�个非负整数。
【输出】
由大到小的n�个非负整数,每个数占一行。
【输入样例】
5
2 5 8 6 12
【输出样例】
12
8
6
5
2
样例代码:
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=1;i<n;i++)
{
for(int j=1;j<=n-i;j++)
{
if(a[j-1]<a[j])
{
int t=a[j-1];
a[j-1]=a[j];
a[j]=t;
}
}
}
for(int i=0;i<n;i++)
cout<<a[i]<<endl;
return 0;
}