自得其乐 发表于 2021-2-10 16:59:57

输入三个整数x,y,z,请把这三个数由小到大输出

# 定义一个空数组
numbers = []
# 循环遍历,下面的4是控制循环次数
for i in range(4):
    if i > 0:
      x = int(input(f"请输入第{i}个整数:"))
      # 把用户输入的数传递到定义的numbers数组中
      numbers.append(x)
# 输出未排序之前的数字
print(f"未排序之前是:{numbers}")


# 不用内置sorted函数试试
def inorder():
    a = numbers
    if numbers > numbers:
      numbers, numbers = numbers, numbers
    if numbers > numbers:
      numbers, numbers = numbers, numbers
    if numbers > numbers:
      numbers, numbers = numbers, numbers
    b = numbers
    print(f"if语句排序结果:{a}")
    print(f"if语句排序结果:{b}")


inorder()
# 让数字从小到大排序
print("由小到大排序完后是:", sorted(numbers))
# 让数字从大到小排序
numbers.sort(reverse=True)
print(f"由大到小排序完后是:{numbers}")
# 输出最大值
print(f"最大数是:{max(numbers)}")
# 输出最小值
print(f"最小数是:{min(numbers)}")
print("最后数组变为:", numbers)

自得其乐 发表于 2021-2-10 17:05:31

python内置的函数sort或者sorted,用起来还蛮好用。自己写的那个简单的比大小虽然可以临时用哈,但是相比还是麻烦,而且数据多了排序那就更麻烦了。
不过他的内置函数源代码是么样写的呢?总也是要遍历比大小之类吧?就能保证他的就是最好的么?

自得其乐 发表于 2021-2-10 17:15:49

你说如果是个大神,他要是忘了或者不知道排序的函数,那他是么搞?
会不会直接写个,比内置的还牛,然后留着自己用哈
极有可能的哈
页: [1]
查看完整版本: 输入三个整数x,y,z,请把这三个数由小到大输出