第十五周 多科成绩单(人名版)

来源:互联网 发布:淘宝被差评有什么影响 编辑:程序博客网 时间:2024/04/30 11:42
01.01.01./*   02.02.02.* 程序的版权和版本声明部分   03.03.03.* Copyright (c)2013, 烟台大学计算机学院学生   04.04.04.* All rightsreserved.   05.05.05.* 文件名称: array.cpp   06.06.06.* 作    者:   07.07.07.* 完成日期:  2013年 12 月  4 日   08.08.08.* 版本号: v1.0   09.09.09.* 输入描述:无   10.10.10.* 问题描述:定义二维数组,为数组赋初值、输入值、更改值、按各种方法输出   11.11.11.*/      12.12.#include <iostream>using namespace std;int score[1000][4],n;string name[10];void input1();void sum();void max1();void max2();void min1();void min2();void ave1();void ave2();int main(){    input1();    sum();    max1();    max2();    min1();    min2();    ave1();    ave2();    return 0;}void input1(){    cout<<"请输入班级的总人数"<<endl;    cin>>n;    cout << "请分别输入该班的高数,英语,c++的成绩" << endl;    for(int i=0;i<n;i++)    {        cin>>name[i];        for(int j=0;j<3;j++)        {            cin>>score[i][j];        }    }}void sum(){    for(int i=0;i<n;i++)    {        for(int x=0;x<3;x++)        {            score[i][3]+=score[i][x];        }    }    cout<<"总成绩依次是"<<endl;    for(int j=0;j<n;j++)    {cout<<score[j][3]<<" ";}    cout<<endl;}void max1(){    int i,j,a;    string b;    cout<<"高数 英语 c++的最高成绩依次是"<<endl;        for(i=0;i<3;i++)        {        for(j=0;j<n-1;j++)        {        if(score[j][i]<score[j+1][i])        {            a=score[j+1][i];            b=name[j+1];        }        else{a=score[j][i];b=name[j];}        }        cout<<b<<a<<" ";        }        cout<<endl;}void max2(){    int max=0;    for(int i=0;i<n-1;i++)    {        if(score[max][3]<score[i+1][3])        {            max=i+1;name[max]=name[i+1];        }    }    cout<<"总分的最高成绩是"<<endl;    cout<<name[max]<<score[max][3]<<" "<<endl;}void min1(){    int i,j,a;    string b;    cout<<"高数 英语 c++的最低成绩依次是"<<endl;        for(i=0;i<3;i++)        {        for(j=0;j<n-1;j++)        {        if(score[j][i]>score[j+1][i])        {            a=score[j+1][i];            b=name[j+1];        }        else{a=score[j][i];b=name[j];}        }        cout<<b<<a<<" ";        }        cout<<endl;}void min2(){    int min=0;    for(int i=0;i<n-1;i++)    {        if(score[min][3]>score[i+1][3])        {            min=i+1;name[min]=name[i+1];        }    }    cout<<"总分的最高成绩是"<<endl;    cout<<name[min]<<score[min][3]<<" "<<endl;}void ave1(){    int a=0,b=0,c=0,a1,b1,c1;    for(int i=0;i<n;i++)    {        a+=score[i][0];        b+=score[i][1];        c+=score[i][2];    }    a1=a/n;    b1=b/n;    c1=c/n;    cout<<"各门课的平均成绩依次是"<<endl;    cout<<a1<<" "<<b1<<" "<<c1<<" "<<endl;}void ave2(){    int a1=0,a2=0;    for(int i=0;i<n;i++)    {        a1+=score[i][3];    }    a2=a1/n;    cout<<"总分的平均成绩是"<<endl;    cout<<a2<<endl;}


运行结果

心得体会

学会了string的运行 在处理数组的问题上面更加的得心应手