2039:【例5.6】冒泡排序

2039:【例5.6】冒泡排序


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 18648     通过数: 10288

【题目描述】

编程输入n(1n20)n(1≤n≤20)个小于10001000非负整数,然后自动按从大到小的顺序输出。(冒泡排序)

【输入】

第一行,数的个数nn;

第二行,nn个非负整数。

【输出】

由大到小的nn个非负整数,每个数占一行。

【输入样例】

5
2 5 8 6 12

【输出样例】

12
8
6
5
2
 
复制代码
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cstring>
#include<string>
#include<cstdio>
#include <cmath>
using namespace std;
int main(){
    int a[22],n;
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    for(int i=1;i<=n-1;i++){
        bool r=true;
        for(int j=n-1;j>=i;j--){
            if(a[j]<a[j+1]){
                swap(a[j],a[j+1]);
                r=false;
            }
        }
        if(r==true) break;
    }
    for(int i=1;i<=n;i++) cout<<a[i]<<endl; 
     return 0;
}
复制代码

 

posted @   xxsy387  阅读(627)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示