鱼C论坛

 找回密码
 立即注册
查看: 1504|回复: 2

[已解决]这个代码有什么问题啊

[复制链接]
发表于 2023-10-9 23:49:01 | 显示全部楼层 |阅读模式

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

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

x
print("温度转换选择\n1、华氏温度转换成摄氏温度\n2、摄氏温度转换成华氏温度")
temp= input('请输入选择:')

if temp == 1:
    F= float(input("请输入华氏温度:"))
    C=5/9*(F-32)
    print('华氏温度',F,"等于摄氏温度",C)
elif temp == 2:
    C= float(input("请输入摄氏温度:"))
    F=9/5*C+32
    print('华氏温度',F,"等于摄氏温度",C)
else:
    print('输入错误')
最佳答案
2023-10-9 23:49:26
这个代码中存在一个问题,即temp变量的比较应该是字符串而不是整数。当你使用input()函数时,它会返回一个字符串,而不是整数。因此,在ifelif语句中,你需要将12用引号括起来,将它们表示为字符串。以下是修改后的代码:
print("温度转换选择\
1、华氏温度转换成摄氏温度\
2、摄氏温度转换成华氏温度")
temp = input('请输入选择:')

if temp == '1':
    F = float(input("请输入华氏温度:"))
    C = 5/9 * (F - 32)
    print('华氏温度', F, "等于摄氏温度", C)
elif temp == '2':
    C = float(input("请输入摄氏温度:"))
    F = 9/5 * C + 32
    print('摄氏温度', C, "等于华氏温度", F)
else:
    print('输入错误')

现在,这个代码应该可以正常运行并根据用户输入的选择进行温度转换。
请注意,本回答来自GPT-4
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-9 23:49:26 | 显示全部楼层    本楼为最佳答案   
这个代码中存在一个问题,即temp变量的比较应该是字符串而不是整数。当你使用input()函数时,它会返回一个字符串,而不是整数。因此,在ifelif语句中,你需要将12用引号括起来,将它们表示为字符串。以下是修改后的代码:
print("温度转换选择\
1、华氏温度转换成摄氏温度\
2、摄氏温度转换成华氏温度")
temp = input('请输入选择:')

if temp == '1':
    F = float(input("请输入华氏温度:"))
    C = 5/9 * (F - 32)
    print('华氏温度', F, "等于摄氏温度", C)
elif temp == '2':
    C = float(input("请输入摄氏温度:"))
    F = 9/5 * C + 32
    print('摄氏温度', C, "等于华氏温度", F)
else:
    print('输入错误')

现在,这个代码应该可以正常运行并根据用户输入的选择进行温度转换。
请注意,本回答来自GPT-4
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2023-10-9 23:49:52 | 显示全部楼层
这段代码的问题在于,输入的temp变量是一个字符串类型,而在if条件语句中,却将temp与整数1和2做了比较。这样做会导致条件不成立,无法进入if和elif语句中的代码块,从而无法完成温度转换的功能。

正确的做法是将temp变量转换为整数类型,可以使用int()函数实现。修改后的代码如下:
print("温度转换选择\n1、华氏温度转换成摄氏温度\n2、摄氏温度转换成华氏温度")
temp = int(input('请输入选择:'))

if temp == 1:
    F = float(input("请输入华氏温度:"))
    C = 5/9*(F-32)
    print('华氏温度', F, "等于摄氏温度", C)
elif temp == 2:
    C = float(input("请输入摄氏温度:"))
    F = 9/5*C+32
    print('摄氏温度', C, "等于华氏温度", F)
else:
    print('输入错误')

修改后,代码可以正确地进行温度转换,输出结果如下:
温度转换选择
1、华氏温度转换成摄氏温度
2、摄氏温度转换成华氏温度
请输入选择:1
请输入华氏温度:100
华氏温度 100.0 等于摄氏温度 37.77777777777778

温度转换选择
1、华氏温度转换成摄氏温度
2、摄氏温度转换成华氏温度
请输入选择:2
请输入摄氏温度:37
摄氏温度 37.0 等于华氏温度 98.6
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-25 19:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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