程序举例 例I、输入某班30位学生的姓名及数学、英语成绩,计算并输出每位学生的平均分。 struct student { char name[10]; int math, eng; float aver;
时间: 2024-03-13 18:43:53 浏览: 21
好的,针对这个问题,可以使用如下的代码来计算并输出每位学生的平均分:
```c++
#include <iostream>
#include <cstring>
using namespace std;
struct student {
char name[10];
int math, eng;
float aver;
};
int main() {
student stu[30]; // 假设有30位学生
// 输入每位学生的信息
for (int i = 0; i < 30; i++) {
cout << "请输入第" << i+1 << "位学生的姓名、数学成绩和英语成绩:";
cin >> stu[i].name >> stu[i].math >> stu[i].eng;
// 计算平均分
stu[i].aver = (stu[i].math + stu[i].eng) / 2.0;
}
// 输出每位学生的平均分
for (int i = 0; i < 30; i++) {
cout << stu[i].name << "的平均分是:" << stu[i].aver << endl;
}
return 0;
}
```
这段代码与之前的例子基本相同,只是将学生人数由3改为了30。当然,在实际应用中,我们还需要考虑如何处理输入错误、维护学生信息等问题。
相关问题
用c语言结构体输入某班30位学生的姓名及数学、英语成绩,计算并输出每位学生的平均分。
好的,下面是使用 C 语言结构体编写的计算每位学生平均分的程序:
```
#include <stdio.h>
struct student {
char name[20];
float math;
float english;
float avg;
};
int main() {
struct student s[30];
int i;
// 输入每位学生的姓名及数学、英语成绩
for (i = 0; i < 30; i++) {
printf("请输入第 %d 位学生的姓名:", i + 1);
scanf("%s", s[i].name);
printf("请输入第 %d 位学生的数学成绩:", i + 1);
scanf("%f", &s[i].math);
printf("请输入第 %d 位学生的英语成绩:", i + 1);
scanf("%f", &s[i].english);
s[i].avg = (s[i].math + s[i].english) / 2; // 计算每位学生的平均分
}
// 输出每位学生的平均分
printf("每位学生的平均分如下:\n");
for (i = 0; i < 30; i++) {
printf("%s 的平均分为 %.2f\n", s[i].name, s[i].avg);
}
return 0;
}
```
程序中定义了一个结构体 `student`,包含了每位学生的姓名、数学成绩、英语成绩和平均分。然后定义了一个结构体数组 `s` 来存储所有学生的信息。
程序通过循环输入每位学生的姓名及数学、英语成绩,并在输入时直接计算每位学生的平均分。然后再通过循环输出每位学生的平均分。
用c语言结构体输入某班30位学生的姓名及数学、英语成绩,计算并输出每门课程的平均分。
好的,下面是 C 语言的代码实现:
```c
#include <stdio.h>
struct student {
char name[20];
float math_score;
float eng_score;
};
int main() {
struct student stu[30];
int i;
float math_sum = 0, eng_sum = 0;
// 输入学生信息
for (i = 0; i < 30; i++) {
printf("请输入第%d位学生的姓名、数学成绩和英语成绩:\n", i+1);
scanf("%s%f%f", stu[i].name, &stu[i].math_score, &stu[i].eng_score);
math_sum += stu[i].math_score;
eng_sum += stu[i].eng_score;
}
// 计算平均分
float math_avg = math_sum / 30;
float eng_avg = eng_sum / 30;
// 输出结果
printf("数学平均分为 %.2f,英语平均分为 %.2f\n", math_avg, eng_avg);
return 0;
}
```
代码中,我们定义了一个结构体 `student`,包含了学生的姓名、数学成绩和英语成绩。然后定义了一个数组 `stu`,用来存储 30 个学生的信息。接着,使用 `for` 循环输入每个学生的信息,并累加每门功课的总分。最后,计算平均分并输出结果。