鱼C论坛

 找回密码
 立即注册
查看: 109|回复: 7

[已解决]和标准答案不一样,这样写算对吗?

[复制链接]
回帖奖励 2 鱼币 回复本帖可获得 2 鱼币奖励! 每人限 1 次(中奖概率 70%)
发表于 前天 21:31 | 显示全部楼层 |阅读模式

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

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

x
题目: 编写一个成绩评级程序,要求用户输入分数,程序返回对应的评级。
让程序可以不断接收输入,直至用户输入小写字母 e 结束程序。
191552uf734xl7v0pligi4.gif
分数 < 60,D
60 <= 分数 < 80,C
80 <= 分数 < 90,B
90 <= 分数 < 100,A
分数 == 100,S

我的:
while 2>1:
    guess = input("你的成绩是多少:")
    if guess == "e":
        print('游戏结束!')
        break
    test = int(guess)
    if test < 60:
        print('D')
    if 60 <= test <80:
        print('C')
    if 80 <= test <90:
        print('B')
    if 90 <= test <100:
        print('a')
    if test ==100:
        print('s')

甲鱼老师的答案:
score = input("请输入你的分数:")

while score != 'e':
    score = int(score)

    if score < 60:
        print("D")

    if 60 <= score < 80:
        print("C")

    if 80 <= score < 90:
        print("B")

    if 90 <= score < 100:
        print("A")

    if score == 100:
        print("S")

    score = input("请输入你的分数:")
最佳答案
昨天 15:09
没问题,输出正确。不报错都可以
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 前天 21:32 | 显示全部楼层
鱼油,你好!

只要你的程序能够根据输入的分数正确输出对应的评级,并且符合题目要求,那么即使写法与标准答案不同,也是正确的。编程中实现同一功能的方法有很多种,关键在于逻辑正确和结果准确。

下面是一个简单的示例代码,使用常见的 if-elif-else 结构:


  1. score = float(input("请输入分数:"))

  2. if score < 60:
  3.     grade = "D"
  4. elif score < 70:
  5.     grade = "C"
  6. elif score < 80:
  7.     grade = "B"
  8. elif score < 90:
  9.     grade = "A"
  10. elif score <= 100:
  11.     grade = "S"
  12. else:
  13.     grade = "输入错误"

  14. print("评级为:", grade)
复制代码


你也可以尝试其他方法,例如使用字典映射或 Python 3.10 的 match-case 语句。只要程序能正确处理边界情况(如分数超出 0-100 范围),并返回正确的评级,就算正确。

如果你有具体的代码写法,欢迎分享出来,我可以帮你分析是否满足题目要求。

加油!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 昨天 00:06 | 显示全部楼层

回帖奖励 +2 鱼币

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 昨天 15:09 | 显示全部楼层    本楼为最佳答案   
没问题,输出正确。不报错都可以
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 15:53 | 显示全部楼层
萧随风 发表于 2026-4-21 15:09
没问题,输出正确。不报错都可以

刚学两天,写出来后对不对也不清楚,
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 昨天 17:34 | 显示全部楼层

回帖奖励 +2 鱼币

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 昨天 20:14 | 显示全部楼层
match怎么说
@FishC
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 昨天 20:15 | 显示全部楼层


在 Python 编程中,match 是一个用于模式匹配的关键字,通常与 case 结合使用。它类似于其他语言中的 `switch` 语句,但功能更灵活,可以匹配值、类型或结构。以下是一个简单示例:


  1. def explain_match(value):
  2.     match value:
  3.         case 1:
  4.             return "数字一"
  5.         case "hello":
  6.             return "字符串 hello"
  7.         case [x, y]:
  8.             return f"列表包含两个元素:{x} 和 {y}"
  9.         case _:
  10.             return "其他情况"

  11. print(explain_match(1))           # 输出:数字一
  12. print(explain_match("hello"))     # 输出:字符串 hello
  13. print(explain_match([10, 20]))    # 输出:列表包含两个元素:10 和 20
  14. print(explain_match(100))         # 输出:其他情况
复制代码


在这个例子中,match 根据 value 的值匹配不同的模式,_ 是通配符,匹配所有未列出的情况。注意,match 语句仅在 Python 3.10 及以上版本中支持。如果使用旧版本,可以考虑用 if-elif-else 实现类似功能。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-22 18:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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