使用数组记录小明某次考试的各科成绩( 92.0, 89.5, 85.0, 100.0, 90.0, 82.0, 88.0, 93.5, 91.0,78 ) 求小明此次考试的总成绩 求小明此次考试的各科平均分(小数未除尽的情况下截断法保留两位小数)。
时间: 2023-02-12 07:05:41 浏览: 123
使用数组记录小明某次考试的各科成绩,可以这样定义:
```
scores = [92.0, 89.5, 85.0, 100.0, 90.0, 82.0, 88.0, 93.5, 91.0, 78]
```
求小明此次考试的总成绩可以使用 Python 中的内置函数 sum(),代码如下:
```
total_score = sum(scores)
print(total_score)
```
求小明此次考试的各科平均分,可以先求出总分,再除以科目数。代码如下:
```
average_score = round(sum(scores) / len(scores), 2)
print(average_score)
```
其中 round(x,n) 为截断法保留 n 位小数。
相关问题
c语言编程有10个学生,每个学生的数据包括学号(用字符数组处理)、姓名、三门课的成绩,从键盘输入学生数据,姓名可能有空格。 1、用结构体数组实现 2、编写input函数,输入一个学生的数据 3、编写output函数,输出一个学生的数据 4、输出三门课总平均成绩(所有学生所有成绩的平均值) 5、输出三门课总成绩最高的学生的信息 输入格式为 2019001 Xue Sheng 1 88.5 88.0 88.5 2019002 Xue Sheng 2 88.0 92.0 86.0 2019003 Xue Sheng 3 86.5 91.5 93.5 2019004 Xue Sheng 4 90.5 95.0 87.0 2019005 Xue Sheng 5 93.5 89.0 94.0 2019006 Xue Sheng 6 83.0 91.5 92.5 2019007 Xue Sheng 7 88.0 84.5 92.0 2019008 Xue Sheng 8 81.5 92.5 87.5 2019009 Xue Sheng 9 86.5 93.5 82.0 2019010 Xue Sheng 10 92.5 90.0 88.0 输出格式保留两位小数为 The average score of all of the courses is 89.23 The information of the sutdent with the highest score is: 2019005,Xue Sheng 5,93.50,89.00,94.00
以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
#define N 10
#define M 3
// 定义学生结构体
struct student {
char id[10]; // 学号
char name[20]; // 姓名
float score[M]; // 三门课成绩
float avg; // 平均分
float sum; // 总分
};
// 输入函数
void input(struct student *stu) {
scanf("%s %s", stu->id, stu->name);
for (int i = 0; i < M; i++) {
scanf("%f", &stu->score[i]);
stu->sum += stu->score[i];
}
stu->avg = stu->sum / M;
}
// 输出函数
void output(struct student stu) {
printf("%s %s ", stu.id, stu.name);
for (int i = 0; i < M; i++) {
printf("%.2f ", stu.score[i]);
}
printf("\n");
}
int main() {
struct student stu[N];
float total_sum = 0; // 所有学生总分
float total_avg; // 所有学生平均分
int max_index; // 总分最高的学生索引
// 输入学生数据
for (int i = 0; i < N; i++) {
input(&stu[i]);
total_sum += stu[i].sum;
}
// 计算总平均分
total_avg = total_sum / (N * M);
printf("The average score of all of the courses is %.2f\n", total_avg);
// 查找总分最高的学生
max_index = 0;
for (int i = 1; i < N; i++) {
if (stu[i].sum > stu[max_index].sum) {
max_index = i;
}
}
// 输出总分最高的学生信息
printf("The information of the student with the highest score is: ");
output(stu[max_index]);
return 0;
}
```
阅读全文