用c语言编程,有三个学生的四门成绩,求每个学生的平均成绩和每门课的平均成绩,用二维数组的方法
时间: 2024-05-02 20:19:44 浏览: 96
您好!这是一个C语言实现求学生平均成绩和每门课的平均成绩的程序:
```
#include <stdio.h>
int main() {
int scores[3][4] = {{80, 85, 90, 95}, {75, 80, 85, 90}, {85, 90, 95, 100}};
int i, j;
// 计算每个学生的平均成绩
for (i = 0; i < 3; i++) {
int sum = 0;
for (j = 0; j < 4; j++) {
sum += scores[i][j];
}
printf("学生%d的平均成绩为:%.2f\n", i + 1, sum / 4.0);
}
// 计算每门课的平均成绩
for (j = 0; j < 4; j++) {
int sum = 0;
for (i = 0; i < 3; i++) {
sum += scores[i][j];
}
printf("第%d门课的平均成绩为:%.2f\n", j + 1, sum / 3.0);
}
return 0;
}
```
对于您的第一个问题,我来给您讲一个笑话吧:为什么一群羊在蒙茸茸的草地上跑来跑去?因为其实它们在进行“草上飞”比赛!
相关问题
c语言编程输入三个同学四门课成绩,输出每一个同学的平均分,每一门课程的平均分
在 C 语言中,你可以通过结构体来存储每个同学的信息,并创建一个数组来表示所有同学。首先,定义一个结构体 `Student` 来包含姓名和四门课的成绩。然后,读取所有学生的数据并计算他们的平均分以及每门课的平均分。以下是一个简单的示例:
```c
#include <stdio.h>
// 定义学生结构体
struct Student {
char name[50];
int scores[4]; // 存储四门课的成绩
};
void calculateAverage(struct Student students[], int n) {
double totalScore = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < 4; j++) {
totalScore += students[i].scores[j];
}
double avgStudent = totalScore / 4;
printf("学生 %s 的平均分为 %.2f\n", students[i].name, avgStudent);
totalScore = 0; // 重置总分,准备计算下一位同学
}
// 计算每门课的平均分
double courseAverages[4] = {0};
for (int i = 0; i < n; i++) {
courseAverages[0] += students[i].scores[0];
courseAverages[1] += students[i].scores[1];
courseAverages[2] += students[i].scores[2];
courseAverages[3] += students[i].scores[3];
}
for (int j = 0; j < 4; j++) {
double avgCourse = courseAverages[j] / n;
printf("课程%d的平均分为 %.2f\n", j+1, avgCourse);
}
}
int main() {
struct Student students[3]; // 假设只有三位同学
int numStudents;
printf("请输入学生人数:");
scanf("%d", &numStudents);
// 读取每位同学的成绩
for (int i = 0; i < numStudents; i++) {
printf("请输入学生 %d 的名字:", i+1);
fgets(students[i].name, sizeof(students[i].name), stdin); // 注意这里要处理换行符
for (int j = 0; j < 4; j++) {
printf("请输入第%d门课的成绩:", j+1);
scanf("%d", &students[i].scores[j]);
}
}
calculateAverage(students, numStudents);
return 0;
}
```
当你运行这个程序,它会提示用户输入每位同学的名字和各门课成绩,然后分别显示每位同学的平均分和每门课的平均分。
C语言,已知五个学生四门课的成绩,要求求出每个学生的平均成绩,然后输出四门课的成绩及平均成绩
好的,这是一个比较简单的C语言问题。以下是代码实现:
```c
#include <stdio.h>
int main() {
float scores[5][4]; // 5个学生,4门课程
float sum, average;
// 读取每个学生的成绩
for (int i = 0; i < 5; i++) {
printf("请输入第%d个学生的四门课成绩,用空格隔开:", i+1);
scanf("%f %f %f %f", &scores[i][0], &scores[i][1], &scores[i][2], &scores[i][3]);
}
// 输出每个学生的成绩及平均成绩
for (int i = 0; i < 5; i++) {
sum = scores[i][0] + scores[i][1] + scores[i][2] + scores[i][3];
average = sum / 4;
printf("第%d个学生的四门课成绩为:%.1f %.1f %.1f %.1f,平均成绩为:%.1f\n",
i+1, scores[i][0], scores[i][1], scores[i][2], scores[i][3], average);
}
return 0;
}
```
希望这个代码可以帮助到你!
阅读全文