你的代码中存在一些问题,我来帮你看看。
首先,你的循环条件是
while x>1:,这意味着只要用户输入的分数大于 1,就会无限循环。其次,你的
input 函数接收到的是字符串,需要将其转换为整数后再进行比较。最后,你在每个判断条件的末尾又让用户重新输入分数,这会导致循环无法正常结束。
以下是修改后的代码:
- while True:
- x = input("请输入你的分数:")
- if x == 'e':
- break
- x = int(x)
- if 0 <= x < 60 :
- print('D')
- elif 60 <= x < 80:
- print('C')
- elif 80 <= x < 90:
- print('B')
- elif 90 <= x < 100:
- print('A')
- elif x == 100:
- print('S')
- else:
- print("输入错误,请重新输入")
- print("程序结束")
复制代码
在这个修改后的代码中,我使用了一个无限循环
while True,然后在适当的位置使用
break 来结束循环。同时我将用户输入的分数转换为整数后再进行判断,并删除了多余的提示输入的语句。这样,当用户输入 'e' 时,程序会结束循环并输出"程序结束"。