酷盖女孩 发表于 2020-6-2 21:49:07

改进我们的小游戏(上)动动手作业

大神们,我在做《改进我们的小游戏(上)》的动动手作业,虽然实现了让程序可以不断接收输入,但从第二次开始,无论后面输入多少分数,输出的结果都和第一次输出的一样,python新人,看不出问题出在哪,还请大家多多指教。下面是代码:
temp = input("请输入你的分数:")
sc = int(temp)
while sc != "e":
    if sc == 100:
      print("5")
    else:
      if 90 <= sc < 100:
            print("A")
      else:
            if 80 <= sc < 90:
                print("B")
            else:
                if 60 <= sc < 80:
                  print("C")
                else:
                  print("D")
    temp = input("请输入你的分数:")

qiuyouzhi 发表于 2020-6-2 21:50:08

前面是sc,后面立马就变temp,还不转换为int类型?

青出于蓝 发表于 2020-6-2 21:50:56

可以用while循环来循坏运行,不然的话,最好不要尝试

青出于蓝 发表于 2020-6-2 21:51:35

这样肯定行不通,temp定义完后代码就运行完了。

青出于蓝 发表于 2020-6-2 21:52:10

光想手速了,没看到while循环...

Twilight6 发表于 2020-6-2 21:52:50

最后一行下面加上 :    sc = int(temp)
完整代码:temp = input("请输入你的分数:")
sc = int(temp)
while sc != "e":
    if sc == 100:
      print("5")
    else:
      if 90 <= sc < 100:
            print("A")
      else:
            if 80 <= sc < 90:
                print("B")
            else:
                if 60 <= sc < 80:
                  print("C")
                else:
                  print("D")
    temp = input("请输入你的分数:")
    sc = int(temp)

liuzhengyuan 发表于 2020-6-2 21:55:27

temp = input("请输入你的分数:")
sc = int(temp)
while True:
    if sc == 100:
      print("5")
    else:
      if 90 <= sc < 100:
            print("A")
      else:
            if 80 <= sc < 90:
                print("B")
            else:
                if 60 <= sc < 80:
                  print("C")
                else:
                  print("D")
    temp = input("请输入你的分数:")
    if temp == "e":
      break
    else:
      sc = int(temp)
页: [1]
查看完整版本: 改进我们的小游戏(上)动动手作业