有10个学生,每个学生的数据包括学号、姓名以及英语、数学、物理三门课的成绩,从键盘输入10个学生数据,要求打印出3门课的总平均成绩,以及最高分学生的数据`
#include<iostream>
#include<string>
using namespace std;
const int n = 10;
struct student //定义结构体变量
{
string name;
int num;
double score[3];
double average;
}student1[n];
int main()
{
int i, j;
for ( i = 0; i < n; i++ )
{
cout << "请输入第" << i + 1 << "个学生的信息:";
cin >> student1[i].num
>> student1[i].name
>> student1[i].score[0] >> student1[i].score[1] >> student1[i].score[2];
}
double sum = 0;
//各学生的平均成绩
for ( i = 0; i < n; i++ )
{
for ( j = 0; j < 3; j++ )
{
sum = sum + student1[i].score[j];
}
student1[i].average = sum / 3;
sum = 0;
}
//打印出各学生的信息
cout << "输出各学生信息:" << endl;
for ( i = 0; i < n; i++ )
{
cout << student1[i].num << " "
<< student1[i].name << " "
<< student1[i].score[0] << " " << student1[i].score[1] << " " << student1[i].score[2] << " "
<< student1[i].average
<< endl;
}
//找出成绩最高的那个学生并输出其信息
double max = student1[0].average;
int row = 0;
for ( i = 0; i < n; i++ )
{
if ( max < student1[i].average )
{
max = student1[i].average;
}
row = i;
}
cout << "最高分的学生的数据:" << endl;
cout << student1[row].num << " "
<< student1[row].name << " "
<< student1[row].score[0] << " " << student1[row].score[1] << " " << student1[row].score[2] << " "
<< student1[row].average
<< endl;
//各科平均成绩
double average1[3];//定义一个装3门课的平均成绩的数组
sum = 0;
for ( j = 0; j < 3; j++ )
{
for ( i = 0; i < n; i++ )
{
sum = sum + student1[i].score[j];
}
average1[j] = sum / n;
sum = 0;
}
cout << endl;
for ( i = 0; i < 3; i++ )//输出各门课的平均成绩
{
cout << "第" << i + 1 << "门课的平均成绩:" << endl;
cout << average1[i]
<< endl;
}
return 0;
}