4070: 【例5.5】冒泡排序

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:12 解决:9

题目描述

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

输入

第一行,数的个数n。

第二行,n个非负整数。

输出

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

样例输入 复制

5
2 5 8 6 12

样例输出 复制

12
8
6
5
2

提示

import math
n=int(input())
a=input().split() #将输入分割为多个字符串,储存在字符串列表a中
a=map(int,a)      #将字符串列表a中的每个元素转为整数
a=list(a)         #list()函数将a转化为列表

#冒泡排序
for i in range(1,n):
    for j in range(n-i):
        #两两比较
        if a[j]<a[j+1]:
            #交换
            a[j],a[j+1]=a[j+1],a[j]
for i in a:
    print(i)