鱼C论坛

 找回密码
 立即注册
查看: 1406|回复: 4

[已解决]大小排序问题

[复制链接]
发表于 2020-9-2 15:29:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
x = input('请输入第一个数:')
y = input('请输入第二个数:')
z = input('请输入第三个数:')

if x < y:
    if x < z:
        if y < z:
            print(x,y,z)
        else:
            print(x,z,y)
    else:
        print(z,x,y)
else:
    if x < z:
        print(y,x,z)
    else:
        if y < z:   
            print(y,z,x)
        else:
            print(z,y,x)


Python 3.7.9 (tags/v3.7.9:13c94747c7, Aug 17 2020, 18:58:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
============================= RESTART: D:\桌面文件\1.py ============================
请输入第一个数:55
请输入第二个数:13
请输入第三个数:110
110 13 55
>>>

请问大佬为什么两位数与三位数比大小的时候,大小排序会是错误的啊?
最佳答案
2020-9-2 15:38:30
你没有用int把xyz转换成整数,input得到的格式是字符串str,于是“13”和“110”比是用字符串的比较方式。,比第一位1和1一样,比第二位3和1,1小,所以110就比13小了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-2 15:37:16 | 显示全部楼层
要转换类型
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-2 15:38:10 | 显示全部楼层
x = int(input('请输入第一个数:'))
y = int(input('请输入第二个数:'))
z = int(input('请输入第三个数:'))
#x<y
if x < y:
    if x < z:
        if y < z:
            print(x,y,z)
        else:
            print(x,z,y)
    else:
        print(z,x,y)
#x>y
else:
    if x < z:
        print(y,x,z)
    else:
        if y < z:   
            print(y,z,x)
        else:
            print(z,y,x)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-2 15:38:17 | 显示全部楼层
逻辑没问题,input接收的是字符串型,要转化为数值型再比较,否则按照字符串型来比大小,规则不一样是一位一位比较的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-2 15:38:30 | 显示全部楼层    本楼为最佳答案   
你没有用int把xyz转换成整数,input得到的格式是字符串str,于是“13”和“110”比是用字符串的比较方式。,比第一位1和1一样,比第二位3和1,1小,所以110就比13小了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 20:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表