有10个学生的某门课成绩,求要求编写以下函数:平均成绩、最高分、分数从小到大排序。
时间: 2023-06-17 21:06:22 浏览: 158
以下是求平均成绩、最高分、分数从小到大排序的 Python 代码示例:
```python
def average_score(scores):
"""
计算平均成绩
:param scores: 成绩列表
:return: 平均成绩
"""
return sum(scores) / len(scores)
def max_score(scores):
"""
获取最高分
:param scores: 成绩列表
:return: 最高分
"""
return max(scores)
def sort_scores(scores):
"""
分数从小到大排序
:param scores: 成绩列表
:return: 排序后的成绩列表
"""
return sorted(scores)
# 测试
scores = [90, 85, 92, 78, 89, 95, 87, 80, 84, 91]
print("平均成绩:", average_score(scores))
print("最高分:", max_score(scores))
print("分数从小到大排序:", sort_scores(scores))
```
输出结果:
```
平均成绩: 87.1
最高分: 95
分数从小到大排序: [78, 80, 84, 85, 87, 89, 90, 91, 92, 95]
```
相关问题
用c语言写一串代码实现有10个学生的某门课成绩,求要求编写以下函数:平均成绩、最高分、分数从小到大排序
以下是用 C 语言编写的代码,实现了对 10 个学生的某门课成绩进行统计:
```c
#include <stdio.h>
void average(int arr[], int n) {
int i, sum = 0;
float avg;
for (i = 0; i < n; i++) {
sum += arr[i];
}
avg = (float)sum / n;
printf("平均成绩为:%.2f\n", avg);
}
void max(int arr[], int n) {
int i, max = arr[0];
for (i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
printf("最高分为:%d\n", max);
}
void sort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
printf("成绩从小到大排序为:\n");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int scores[10] = {90, 65, 78, 82, 95, 70, 88, 75, 84, 92};
average(scores, 10);
max(scores, 10);
sort(scores, 10);
return 0;
}
```
在上面的代码中,我们定义了三个函数,分别实现了求平均成绩、最高分和成绩排序的功能。在 `main()` 函数中,我们定义了一个长度为 10 的数组 `scores`,存储了 10 个学生的成绩。然后分别调用了三个函数,输出了对应的结果。
程序有时候需要将任务按流水式进行,例如评判体操选手的任务按流水式为依次的三个步骤:录入裁判给选手的分数,去掉一个最高分和一个最低分,计算出平均成绩。 编写程序,搭建流水线,只需将评判体操选手的任务交给
我了解您的问题,这是一个非常典型的流水线问题,可以使用编程来实现。以下是一个基本的流水线框架:
```python
# 定义流水线阶段1:录入分数
def stage1(scores):
# 输入:评委给出的所有分数
# 输出:分数列表(已排序)
# 按从小到大排序
sorted_scores = sorted(scores)
return sorted_scores
# 定义流水线阶段2:去掉一个最高分和一个最低分
def stage2(scores):
# 输入:分数列表(已排序)
# 输出:去掉最高分和最低分后的分数列表
# 去掉最高分和最低分
trimmed_scores = scores[1:-1]
return trimmed_scores
# 定义流水线阶段3:计算平均分
def stage3(scores):
# 输入:去掉最高分和最低分后的分数列表
# 输出:平均分
# 计算平均分
avg_score = sum(scores) / len(scores)
return avg_score
# 流水线主函数
def pipeline(scores):
# 执行流水线阶段1
sorted_scores = stage1(scores)
# 执行流水线阶段2
trimmed_scores = stage2(sorted_scores)
# 执行流水线阶段3
avg_score = stage3(trimmed_scores)
# 返回结果
return avg_score
```
您可以使用以上代码作为参考,根据需要进行修改和完善。在实际使用中,只需将评判体操选手的任务作为输入传递给 `pipeline` 函数即可。
阅读全文