c++分析用input分析有5个学生,每个学生的数据包括学号、姓名、3门课的成绩。从键盘输入5个学生数据,要求输出3门课总平均成绩,以及平均成绩最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分)。
时间: 2023-12-16 20:28:30 浏览: 75
以下是C++代码实现,用结构体存储学生信息,通过循环输入5个学生的信息,计算各科平均分和总平均分,同时记录平均分最高的学生信息并输出。
```c++
#include <iostream>
#include <cstring>
using namespace std;
struct STU{
char num[100];//学号
char name[100];//姓名
int s1;//三门成绩
int s2;
int s3;
float avg;//平均分
};
int main(){
STU stu[5];
float avg1 = 0, avg2 = 0, avg3 = 0, avg = 0;//三门课程平均分和总平均分
int max_index = 0;//平均分最高的学生下标
float max_avg = 0;//平均分最高的学生平均分
//输入学生信息
for(int i = 0; i < 5; i++){
cin >> stu[i].num >> stu[i].name >> stu[i].s1 >> stu[i].s2 >> stu[i].s3;
stu[i].avg = (stu[i].s1 + stu[i].s2 + stu[i].s3) / 3.0;//计算平均分
avg1 += stu[i].s1;
avg2 += stu[i].s2;
avg3 += stu[i].s3;
avg += stu[i].avg;
if(stu[i].avg > max_avg){//记录平均分最高的学生信息
max_avg = stu[i].avg;
max_index = i;
}
}
//输出各科平均分和总平均分
cout << avg1 / 5 << " " << avg2 / 5 << " " << avg3 / 5 << endl;
cout << avg / 5 << endl;
//输出平均分最高的学生信息
cout << stu[max_index].num << " " << stu[max_index].name << " " << stu[max_index].s1 << " " << stu[max_index].s2 << " " << stu[max_index].s3 << " " << stu[max_index].avg << endl;
return 0;
}
```
阅读全文
相关推荐


















