班級成績管理系統

#include<bits/stdc++.h>
using namespace std;
struct birth
{
    int year,month,day;
};
struct grade
{
    int math;
    int english;
    int c ;
    int mks;
    int sx;
    int pe;
};
struct infor
{
    string name;
    birth bir;
    grade gra;
    int xuehao;
    double jidian;

};
infor a[8];
double xuefen(int &g);
void jidian(infor &w);
bool cmp(infor sx,infor xs)
{
    return sx.jidian>xs.jidian;
}
int main()
{
    int n;
    cout<<"請輸入學生人數: ";
    cin>>n;
    cout<<"請輸入信息:"<<endl<<"姓名 學號 生日(年 月 日) 成績(高數 英語 C++ 馬克思 思修 體育)"<<endl;
    for(int i=0;i<n;i++)
    {
        cin>>a[i].name>>a[i].xuehao>>a[i].bir.year>>a[i].bir.month>>a[i].bir.day;
        cin>>a[i].gra.math>>a[i].gra.english>>a[i].gra.c>>a[i].gra.mks>>a[i].gra.sx>>a[i].gra.pe;
        jidian(a[i]);
    }
    sort(a,a+n,cmp);
    cout<<"排名信息:"<<endl<<"姓名 學號  學分績點 生日(年 月 日) 成績(高數 英語 C++ 馬克思 思修 體育)"<<endl;
    for(int i=0;i<n;i++)
    {
        cout<<a[i].name<<' '<<a[i].xuehao<<' ';
        printf("%.3f ",a[i].jidian);
        cout<<a[i].bir.year<<"年"<<a[i].bir.month<<"月"<<a[i].bir.day<<"日";
        cout<<' '<<a[i].gra.math<<' '<<a[i].gra.english<<' '<<a[i].gra.c<<' '<<a[i].gra.mks<<' '<<a[i].gra.sx<<' '<<a[i].gra.pe<<endl;
    }
}
void jidian(infor &w)
{
    double csd;
    csd=xuefen(w.gra.math)*5+xuefen(w.gra.english)*2+xuefen(w.gra.c)*3+xuefen(w.gra.mks)*3+xuefen(w.gra.sx)*2+xuefen(w.gra.pe);
    w.jidian=csd/16;
}
double xuefen(int &g)
{
    double df;
    df=1.00*g/10-5;
    return df;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章