上海海洋大学yqhyzy:Python实现n个学生各科成绩生成与统计值计算
要完成这个任务,我们需要编写一个Python程序,该程序将接收一个输入值`n`,然后生成`n`个学生的学号以及他们的语文、数学和英语成绩。接着,程序将计算并输出每科成绩的平均分、标准差和中位数。 这里是一个简单的Python程序,用于实现上述要求: ```python import random from statistics import median from math import sqrt # 设置随机数种子 random.seed(10) # 输入学生数量 n = int(input("请输入学生数量n:")) # 初始化学生成绩列表 students = [] # 生成学生学号及成绩 for i in range(1, n+1): student_id = f"202310{i:03}" # 格式化学号,确保为三位数,不足前面补0 chinese_score = random.randint(60, 100) math_score = random.randint(60, 100) english_score = random.randint(60, 100) students.append([student_id, chinese_score, math_score, english_score]) # 打印学生成绩列表 print("学号\t语文\t数学\t外语") for student in students: print("\t".join(map(str, student))) # 计算各科成绩的平均分、标准差和中位数 def calculate_statistics(scores): average = sum(scores) / len(scores) variance = sum((x - average) 2 for x in scores) / len(scores) standard_deviation = sqrt(variance) return average, standard_deviation, median(scores) # 计算并打印统计值 chinese_stats = calculate_statistics([score[1] for score in students]) math_stats = calculate_statistics([score[2] for score in students]) english_stats = calculate_statistics([score[3] for score in students]) print(f"语文平均分:{chinese_stats[0]:.2f},标准差:{chinese_stats[1]:.2f},中位数:{chinese_stats[2]:.2f}") print(f"数学平均分:{math_stats[0]:.2f},标准差:{math_stats[1]:.2f},中位数:{math_stats[2]:.2f}") print(f"英语平均分:{english_stats[0]:.2f},标准差:{english_stats[1]:.2f},中位数:{english_stats[2]:.2f}") ``` 当您运行这个程序时,它将提示您输入学生数量`n`,然后生成对应的学生成绩数据,并计算每科成绩的平均分、标准差和中位数,最后打印出来。 注意:这个程序使用了Python的`random`模块来生成随机数,并使用`statistics`模块中的`median`函数来计算中位数。标准差是通过计算方差然后开方得到的,这里使用了`math`模块中的`sqrt`函数。所有的统计值都保留了两位小数,符合题目要求。 ######[AI写代码神器 | 683点数解答 | 2024-05-08 11:25:45]
- C 语言:快速实现 5 个学生信息录入、按成绩升序排序并输出!(字节豆包 | 373点数解答 | 2024-10-30 00:37:20)410
- C语言实现:输入5名学生信息并按成绩升序排序输出(字节豆包 | 354点数解答 | 2024-10-30 18:45:58)354
- C语言:输入5个学生信息,按成绩升序排序并输出(字节豆包 | 373点数解答 | 2024-10-31 19:49:58)345
- C语言:输入5名学生信息并按成绩升序排序输出(字节豆包 | 326点数解答 | 2025-01-01 20:11:47)340
- 代码填空挑战:完成正态分布、随机数生成及数据处理代码(阿里通义 | 506点数解答 | 2025-03-23 14:32:14)317
- 挑战!完成代码填空解锁数据处理奥秘(字节豆包 | 116点数解答 | 2025-03-26 22:22:15)335
- 挑战填空!完成这段 NumPy 代码实现数据生成与保存(DeepSeek | 178点数解答 | 2025-03-26 22:26:30)396
- 成绩等级统计:20个60 - 100分成绩的等级数量揭秘(字节豆包 | 219点数解答 | 2025-04-09 10:20:32)219
- 培训机构学员成绩与年龄更新:C++ 代码实现(DeepSeek | 186点数解答 | 2025-12-16 18:04:31)59
- Python 处理培训机构学员培训后年龄与 NOIP 成绩提升情况(DeepSeek | 73点数解答 | 2025-12-16 18:05:20)62
- 培训机构学员成绩提升:C++代码实现年龄与NOIP成绩更新(DeepSeek | 178点数解答 | 2025-12-31 12:20:24)59
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)458