三数排序从小到大的三种实现方法

a = int(input("请输入第一个整数:"))
b = int(input("请输入第二个整数:"))
c = int(input("请输入第三个整数:"))

# 方法一:枚举出三数字的所有排列组合,共6种情况,利用分支解决即可
# if a > b > c:
#     print(a, b, c)
# elif a > c > b:
#     print(a, c, b)
# elif b > a > c:
#     print(b, a, c)
# elif b > c > a:
#     print(b, c, a)
# elif c > a > b:
#     print(c, a, b)
# else:
#     print(c, b, a)

# 方法二:借助列表中相关的函数sort()函数,可以直接得到该列表的从小到大结果
# 由于该结果得到的是一个列表,所有要得到非列表的结果,依次输出各元素即可
# numbers = [a, b, c]
# numbers.sort()  # 调用sort()函数


# 方法三:调用函数进行解决三数排序问题
def new_sort(list):
    n = len(list)       # 获取列表中元素的个数
    for i in range(n - 1):     # 依次遍历每个列表元素
        for j in range(n - i - 1):  # 将每一个需要遍历的元素和其他元素进行比较
            if list[j] > list[j + 1]:   # 如果其后一个元素比前一个元素小,则进行交换
                list[j], list[j + 1] = list[j + 1], list[j]   # 此处类似于 a,b=b,a ,该处与其他编程语言写法不一样,这是python独有的
    return list

numbers = []

numbers.append(a)
numbers.append(b)
numbers.append(c)

numbers = new_sort(numbers)
print("从小到大排序的结果:")   # 输出排序后的结果
for number in numbers:       # 对列表元素进行遍历,依次输出
    print(number, end=" ")




你可能感兴趣的:(python,python)