Java考试成绩统计程序开发需求:实现录入与统计功能
考试成绩收集与统计程序实现
没问题,我来帮你搞定这个成绩收集的小工具!下面是用Python实现的完整代码,完美覆盖所有需求:
def collect_test_scores(): # 初始化存储有效成绩的列表 scores = [] # 打印初始提示信息 print("Please input test scores with values between 0-100. Enter 999 to finish.") while True: try: # 获取用户输入并转为整数 input_score = int(input("Enter a score: ")) # 输入999时终止收集 if input_score == 999: break # 验证成绩是否在有效范围内 if 0 <= input_score <= 100: scores.append(input_score) else: print("Invalid Test Score") except ValueError: # 处理非数字输入的情况 print("Invalid Test Score") # 统计并展示结果 if scores: print("\n--- 成绩统计结果 ---") print(f"录入成绩数量: {len(scores)}") print(f"最低分: {min(scores)}") print(f"最高分: {max(scores)}") print(f"平均分: {sum(scores)/len(scores):.2f}") else: print("\n没有录入任何有效成绩。") # 启动程序 collect_test_scores()
关键功能说明:
- 初始提示:程序启动时立刻显示要求的提示文本,明确告诉用户输入规则和结束方式。
- 循环收集逻辑:用
while True持续接收输入,直到用户输入999才停止收集。 - 输入验证:
- 先尝试将输入转换为整数,如果输入不是数字(比如字母、符号),直接提示无效。
- 检查成绩是否在
0-100范围内,符合条件才加入成绩列表,否则忽略该输入并提示错误。
- 结果统计:
- 如果有有效成绩,计算并展示数量、最低分、最高分,以及保留两位小数的平均分。
- 如果没有任何有效成绩(比如直接输入999),会给出友好提示。
你可以直接运行这段代码测试,不管是输入有效成绩、无效成绩还是终止指令,都能按照预期工作~
内容的提问来源于stack exchange,提问作者Marita Merabishvili
相关产品推荐
相关产品推荐

