编写程序,实现输入30个学生6门课的成绩,并输出每个学生的总成绩和平均成赚。
时间: 2024-02-11 16:09:39 浏览: 94
好的,以下是Python代码实现:
```python
# 创建一个空的字典,用于存储学生成绩
scores_dict = {}
# 输入30个学生的6门课成绩
for i in range(1, 31):
# 创建一个空的列表,用于存储该学生的6门课成绩
scores_list = []
for j in range(1, 7):
score = float(input("请输入第{}个学生的第{}门课成绩:".format(i, j)))
scores_list.append(score)
# 将该学生的成绩列表存入字典中
scores_dict[i] = scores_list
# 计算每个学生的总成绩和平均成绩
for key, value in scores_dict.items():
total_score = sum(value)
avg_score = total_score / 6
print("第{}个学生的总成绩为:{},平均成绩为:{}".format(key, total_score, avg_score))
```
运行程序后,按照提示输入每个学生的成绩,程序会自动计算每个学生的总成绩和平均成绩,并输出在屏幕上。
相关问题
使用C编写程序,实现输入30个学生6门课的成绩,并输出每个学生的总成绩和平均成赚。
好的,以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
float scores[30][6]; // 存储学生成绩的二维数组
float total_score, avg_score; // 总成绩和平均成绩
// 输入30个学生的6门课成绩
for (int i = 0; i < 30; i++) {
printf("请输入第%d个学生的6门课成绩:\n", i+1);
for (int j = 0; j < 6; j++) {
scanf("%f", &scores[i][j]);
}
}
// 计算每个学生的总成绩和平均成绩,并输出结果
for (int i = 0; i < 30; i++) {
total_score = 0;
for (int j = 0; j < 6; j++) {
total_score += scores[i][j];
}
avg_score = total_score / 6;
printf("第%d个学生的总成绩为:%.2f,平均成绩为:%.2f\n", i+1, total_score, avg_score);
}
return 0;
}
```
运行程序后,按照提示输入每个学生的成绩,程序会自动计算每个学生的总成绩和平均成绩,并输出在屏幕上。需要注意的是,由于涉及到小数,需要用`float`类型存储成绩。另外,`%.2f`表示输出两位小数的浮点数。
编写一个c语言程序,实现从键盘输入3个学生数据(每个学生的数据包括学号、姓名、2门课程成绩的),输出每个学生2门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、2门课的成绩、平均分数)。
好的,以下是 C 语言实现的代码:
```c
#include <stdio.h>
// 定义一个学生结构体
struct Student {
char id[20];
char name[20];
float score1;
float score2;
};
int main() {
// 创建一个学生数组,用于存储学生信息
struct Student students[3];
// 从键盘输入3个学生数据
for (int i = 0; i < 3; i++) {
printf("请输入第%d个学生的学号:", i + 1);
scanf("%s", students[i].id);
printf("请输入第%d个学生的姓名:", i + 1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的第1门课程成绩:", i + 1);
scanf("%f", &students[i].score1);
printf("请输入第%d个学生的第2门课程成绩:", i + 1);
scanf("%f", &students[i].score2);
}
// 计算每个学生2门课总平均成绩,并输出
for (int i = 0; i < 3; i++) {
float average = (students[i].score1 + students[i].score2) / 2;
printf("%s的平均分数为:%.2f\n", students[i].name, average);
}
// 找出最高分的学生,并输出其数据
float max_average = 0;
struct Student max_student;
for (int i = 0; i < 3; i++) {
float average = (students[i].score1 + students[i].score2) / 2;
if (average > max_average) {
max_average = average;
max_student = students[i];
}
}
printf("平均分数最高的学生是:\n");
printf("学号:%s\n", max_student.id);
printf("姓名:%s\n", max_student.name);
printf("第1门课程成绩:%.2f\n", max_student.score1);
printf("第2门课程成绩:%.2f\n", max_student.score2);
printf("平均分数:%.2f\n", max_average);
return 0;
}
```
你可以将以上代码保存为 .c 文件并编译运行,按照提示输入数据,程序将会输出每个学生的平均分数和平均分数最高的学生的数据。
阅读全文