/*
*Copyright (c) 2014,烟台大学计算机学院
*All right reserved.
*文件名称:main.cpp
*作 者:臧云吉
*完成时间:2014年11月18日
*版 本 号:v1.0
*描 述:用二位数组保存同学们的高数、英语、C++以及总成绩,输入三科成绩自动求出总成绩,并输出最高最低分以及平均分
*/
#include<iostream>
#include<string>
using namespace std;
string course[4]={"Math","English","C++","Total"};
void input(double s[][4],int n);
void output(double s[][4],int n);
double max(double s[][4],int n,int i);
double min(double s[][4],int n,int i);
double avg(double s[][4],int n,int i);
int main()
{
double score[100][4];
int n,i;
cin>>n;
input(score,n);
output(score,n);
for(i=0;i<4;i++)
{
cout<<course[i]<<"'s maximal score is : "<<max(score,n,i)<<",";
cout <<"minimum score is : " <<min(score,n,i)<<",";
cout <<"and the average is : " <<avg(score,n,i)<<"."<<endl;
}
return 0;
}
void input(double s[][4],int n)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<3;j++)
{
cin>>s[i][j];
}
s[i][3]=s[i][0]+s[i][1]+s[i][2];
}
}
void output(double s[][4],int n)
{
cout<<course[0]<<'\t'<<course[1]<<'\t'<<course[2]<<'\t'<<course[3]<<'\t'<<endl;
for(int i=0;i<n;i++)
{
for(int j=0;j<4;j++)
{
cout<<s[i][j]<<'\t';
}
cout<<endl;
}
}
double max(double s[][4],int n,int i)
{
int max_=s[0][i];
for(int x=0;x<n;x++)
{
if(s[x][i]>max_)
{
max_=s[x][i];
}
}
return max_;
}
double min(double s[][4],int n,int i)
{
int min_=s[0][i];
for(int x=0;x<n;x++)
{
if(s[x][i]<min_)
{
min_=s[x][i];
}
}
return min_;
}
double avg(double s[][4],int n,int i)
{
double sum=0;
double avg_;
for(int x=0;x<n;x++)
{
sum+=s[x][i];
}
avg_=sum/n;
return avg_;
}
运行结果