第16周项目4-多科成绩(完善)

来源:互联网 发布:手绘sai软件打不开 编辑:程序博客网 时间:2024/06/06 13:22
/** 程序的版权和版本声明部分* Copyright (c)2013, 烟台大学计算机学院学生* All rightsreserved.* 文件名称: array.cpp* 作    者:孔云* 完成日期:2013年12月11日* 版 本 号: v1.0* 输入描述:输入学生人数和成绩。* 问题描述:利用二维数组编程序,           计算出三门课程总成绩、最高成绩、最低成绩、平均成绩、标准偏差*/#include <iostream>#include <cmath>using namespace std;void input(double g[][4],int);double high(double a[][4],int n,int j);double low(double b[][4],int n,int j);double average(double c[][4],int n,int j);double biaocha(double d[][4],int n,int j);void output(double h[][4],int);int main(){    int n;    double s[200][4];//n<=200    cout<<"请输入学生人数:"<<endl;    cin>>n;    input(s,n);    cout<<"高数最高成绩:"<<high(s,n,0)<<endl;    cout<<"英语最高成绩:"<<high(s,n,1)<<endl;    cout<<"C++最高成绩:"<<high(s,n,2)<<endl;    cout<<"总成绩最高成绩:"<<high(s,n,3)<<endl;    cout<<"高数最低成绩:"<<low(s,n,0)<<endl;    cout<<"英语最低成绩:"<<low(s,n,1)<<endl;    cout<<"C++最低成绩:"<<low(s,n,2)<<endl;    cout<<"总成绩低最成绩:"<<low(s,n,3)<<endl;    cout<<"高数平均成绩:"<<average(s,n,0)<<endl;    cout<<"英语平均成绩:"<<average(s,n,1)<<endl;    cout<<"C++平均成绩:"<<average(s,n,2)<<endl;    cout<<"总成绩平均成绩:"<<average(s,n,3)<<endl;    cout<<"高数标准偏差成绩:"<<biaocha(s,n,0)<<endl;    cout<<"英语标准偏差成绩:"<<biaocha(s,n,1)<<endl;    cout<<"C++标准偏差成绩:"<<biaocha(s,n,2)<<endl;    cout<<"总成绩标准偏差成绩:"<<biaocha(s,n,3)<<endl;    output(s,n);    return 0;}void input(double s[][4],int n){    int i;    cout<<"请输入学生成绩:"<<endl;    for(i=0; i<n; i++)    {        cout<<"高数,英语,C++成绩分别为:"<<endl;        cin>>s[i][0]>>s[i][1]>>s[i][2];        s[i][3]=s[i][0]+s[i][1]+s[i][2];        cout<<"总成绩:"<<s[i][3]<<endl;    }}double high(double a[][4],int n,int j){    int i,max=-1;        for(i=0; i<n; i++)        {            if(max<a[i][j])                max=a[i][j];}        return max;}double low(double b[][4],int n,int j){    int i,min=999;   for(i=0; i<n; i++)        {            if(min>b[i][j])                min=b[i][j];        }    return min;}double average(double c[][4],int n,int j){    int i,sum=0;    double ave=0;        for(i=0; i<n; i++)        {            sum+=c[i][j];        }        ave=sum/n;        return ave;}double biaocha(double d[][4],int n,int j){    int i;    double ave=average(d,n,j),x=0,y=0;        for(i=0; i<n; i++)        {            x+=pow((d[i][j]-ave),2);        }        y=sqrt(x/(n-1));        return y;}void output(double s[][4],int n){    int i,l=0,k=0;    double max=high(s,n,3),min=low(s,n,3);    for(i=0; i<n; i++)    {        if(max==s[i][3])        {            l++;            cout<<"学号:"<<i<<" ";        }    }    cout<<"为最高分,总分最高成绩人数:"<<l<<endl;    for(i=0; i<n; i++)    {        if(min==s[i][3])        {            k++;            cout<<"学号:"<<i<<" ";        }    }    cout<<"为最低分,总分最低成绩人数:"<<k<<endl;}


心得体会:这种感觉真好,一道题可以做出不同的花样,各个知识点囊括其中,此次行动,我又将函数再次理解一番,希望在今后的取经路上,这种感觉一路相随!奋斗

孩子,有唐僧那样的师父,一定知道幸福其中啊!偷笑

0 0
原创粉丝点击