#include<iostream>
using namespace std;
void kemu(int n)
{
if(n == 1) cout<<"C++语言: ";
else if(n == 2) cout<<"数据结构: ";
else if(n == 3) cout<<"英语: ";
else cout<<"数字电子技术: ";
}
//成绩最高的学生----------------------
void hscore(float b[][4])
{
float c = b[0][0];
for(int i = 0; i < 5; i++)
{ //找出最高的分数
for(int j = 0; j < 4; j++)
{
if(b[i][j] > c)
{
c = b[i][j];
}
}
}
cout<<"成绩最高的学生的序号和课程如下: \n";
for(int k = 0; k < 5; k++)
{ //找出最高分数的学生
for(int t = 0; t < 4; t++)
{
if(b[k][t] == c)
{
cout<<k<<" 号学生 >>> ";
kemu(t);
cout<<b[k][t]<<endl;
}
}
}
}
//找出有不及格科目的学生----------------------------------
void failure(float c[][4])
{
cout<<"有不及格科目的学生的情况:\n";
for(int i = 0; i < 5; i++)
{
for(int j = 0; j < 4; j++)
{
if(c[i][j] < 60)
{
cout<<i+1<<" 号学生 "<<endl; cout<<"C++语言: "<<c[i][0]<<"\t"<<"数据结构: "<<c[i][1]<<"\t";
cout<<"英语: "<<c[i][2]<<"\t"<<"数字电子技术: "<<c[i][3]<<endl;
}
}
}
}
//求各科总平均分---------------------------------
void average(float d[][4])
{
float m, av;
for(int i = 0; i < 4; i++)
{
m = 0;
av = 0;
for(int j = 0; j < 5; j++)
{
m += d[j][i];
}
av = m/5;
kemu(i+1);
cout<<"的总平均分>>> "<<av<<endl;
}
}
//主函数
void main()
{
float a[5][4];
cout<<
"请分别输入 C++语言(第1门课) 数据结构(第2门课) 英语(第3门课) 数字电子技术(第4门课) 的成绩"
<<endl;
//录入学生成绩和序号
for(int i = 0; i < 5; i++)
{
cout<<"\n请输入第 "<< i+1<< "个学生的成绩:"<<endl;
for(int j = 0; j < 4; j++)
{
cout<<"请输入第 "<<j+1<<" 门课成绩>>> ";
cin>>a[i][j];
}
}
//查询结果输出
cout<<"-----------------------------------------\n";
hscore(a);//最高成绩
cout<<"-----------------------------------------\n\n";
cout<<"-----------------------------------------\n";
failure(a);//有不及格者
cout<<"-----------------------------------------\n\n";
cout<<"-----------------------------------------\n";
average(a);//各科总平均分
cout<<"-----------------------------------------\n";
}