鱼C论坛

 找回密码
 立即注册
查看: 2609|回复: 5

[已解决]求助大佬

[复制链接]
发表于 2023-7-26 20:13:03 | 显示全部楼层
你好!我明白了你的问题。在给出答案之前,首先让我们来看一下你提供的代码:

  1. score = input("请输入你的分数:")
  2. while score != 'e':
  3.     score = int(score)
  4.     if score < 60:
  5.         print("D")
  6.     if 60 <= score < 80:
  7.         print("C")
  8.     if 80 <= score < 90:
  9.         print("B")
  10.     if 90 <= score < 100:
  11.         print("A")
  12.     if score == 100:
  13.         print("S")
  14.     score = input("请输入你的分数:")
复制代码


在这段代码中,你使用了一个循环来处理用户输入的分数。循环会一直运行直到用户输入了字母 "e" 为止。然后你将用户输入的分数转换成整数类型,并使用一系列的条件语句来确定对应的等级,并打印输出。最后,你再次提示用户输入分数。

问题在于,当你删除了最后一行的缩进后,导致了一个错误的逻辑。由于没有缩进,最后一行被放在了循环外部,而不是在每次循环中。这样一来,不论用户输入什么分数,都会不断打印输出 "S",从而导致无限刷新。

要解决这个问题,你需要将最后一行 score = input("请输入你的分数:") 的缩进重新加回来,确保它在循环内部。这样,每次循环结束后,程序会再次提示用户输入分数,并且继续执行下一次循环。

修正后的代码如下所示:

  1. score = input("请输入你的分数:")
  2. while score != 'e':
  3.     score = int(score)
  4.     if score < 60:
  5.         print("D")
  6.     if 60 <= score < 80:
  7.         print("C")
  8.     if 80 <= score < 90:
  9.         print("B")
  10.     if 90 <= score < 100:
  11.         print("A")
  12.     if score == 100:
  13.         print("S")
  14.     score = input("请输入你的分数:")
复制代码


通过这样的修正,你应该可以正常地运行代码了。每次输入分数后,程序会判断对应的等级并打印输出,然后再次提示用户输入分数。

希望这个解答能够帮助到你!如果还有其他问题,请随时提问。
如果问题已经解决,请设置最佳答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-21 03:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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