输入5个学生的3门成绩,计算每门课的平均成绩和每一为学生的平均成绩
时间: 2023-09-09 10:10:12 浏览: 73
好的,我已经理解您的要求。以下是计算每门课的平均成绩和每位学生的平均成绩的代码实现:
```python
# 定义一个列表,存储5个学生的成绩
scores = []
# 循环输入5个学生的3门成绩
for i in range(5):
print("请输入第{}个学生的3门成绩,用空格分隔:".format(i+1))
score = input().split()
score = [int(x) for x in score] # 将输入转换成整数
scores.append(score)
# 计算每门课的平均成绩
averages_course = [sum(x)/len(x) for x in zip(*scores)]
print("每门课的平均成绩为:", averages_course)
# 计算每一位学生的平均成绩
averages_student = [sum(x)/len(x) for x in scores]
print("每一位学生的平均成绩为:", averages_student)
```
运行以上代码,您只需按照提示输入5个学生的成绩,代码会自动计算并输出每门课的平均成绩和每一位学生的平均成绩。请注意,您可以随时结束对话,我不会记录您输入的任何信息。
相关问题
分别用函数实现输入3个学生两门课程的成绩 计算每个学生的平均成绩 计算没门
课程的平均成绩,并输出每个学生的平均成绩和每门课程的平均成绩。
以下是代码示例:
#include <stdio.h>
void input_scores(float scores[][2], int n);
void calculate_average(float scores[][2], float avg_stu[], float avg_course[], int n);
int main()
{
float scores[3][2];
float avg_stu[3], avg_course[2];
input_scores(scores, 3);
calculate_average(scores, avg_stu, avg_course, 3);
printf("每个学生的平均成绩为:\n");
for (int i = ; i < 3; i++) {
printf("学生%d:%.2f\n", i + 1, avg_stu[i]);
}
printf("每门课程的平均成绩为:\n");
for (int i = ; i < 2; i++) {
printf("课程%d:%.2f\n", i + 1, avg_course[i]);
}
return ;
}
void input_scores(float scores[][2], int n)
{
for (int i = ; i < n; i++) {
printf("请输入学生%d的两门成绩:\n", i + 1);
scanf("%f%f", &scores[i][], &scores[i][1]);
}
}
void calculate_average(float scores[][2], float avg_stu[], float avg_course[], int n)
{
float sum_stu, sum_course[2];
for (int i = ; i < n; i++) {
sum_stu = scores[i][] + scores[i][1];
avg_stu[i] = sum_stu / 2;
}
for (int i = ; i < 2; i++) {
sum_course[i] = ;
for (int j = ; j < n; j++) {
sum_course[i] += scores[j][i];
}
avg_course[i] = sum_course[i] / n;
}
}
我已经回答了你的问题,请问还有什么可以帮助你的吗?
别用函数实现输入3个学生两门课程的成绩 计算每个学生的平均成绩 计算每门功课的平均分
可以使用数组来存储学生的成绩,然后使用循环计算每个学生的平均成绩和每门功课的平均分。具体实现如下:
#include <stdio.h>
int main() {
float scores[3][2]; // 存储学生的成绩
float avg_student[3] = {}; // 存储每个学生的平均成绩
float avg_course[2] = {}; // 存储每门功课的平均分
// 输入学生的成绩
for (int i = ; i < 3; i++) {
printf("请输入第%d个学生的成绩:\n", i+1);
for (int j = ; j < 2; j++) {
printf("请输入第%d门功课的成绩:", j+1);
scanf("%f", &scores[i][j]);
}
}
// 计算每个学生的平均成绩
for (int i = ; i < 3; i++) {
for (int j = ; j < 2; j++) {
avg_student[i] += scores[i][j];
}
avg_student[i] /= 2;
}
// 计算每门功课的平均分
for (int j = ; j < 2; j++) {
for (int i = ; i < 3; i++) {
avg_course[j] += scores[i][j];
}
avg_course[j] /= 3;
}
// 输出结果
printf("每个学生的平均成绩为:\n");
for (int i = ; i < 3; i++) {
printf("第%d个学生的平均成绩为:%.2f\n", i+1, avg_student[i]);
}
printf("每门功课的平均分为:\n");
for (int j = ; j < 2; j++) {
printf("第%d门功课的平均分为:%.2f\n", j+1, avg_course[j]);
}
return ;
}