班级成绩管理系统

来源:互联网 发布:mac mini安装win7教程 编辑:程序博客网 时间:2024/06/10 05:17
#include<iostream>#include<fstream>#include<cstring>#include <stdlib.h>#include <conio.h>using namespace std;int n=0;class Student{public:  string name;    string num;    char cclass[20];    int lisan;    int gaoshu;    int dianlu;    int sum;    /*--------------------------输入函数-----------------------------*/    void input()    {        cout<<"\t请输入姓名:";       cin>>name;        cout<<"\t请输入学号:";       cin>>num;        cout<<"\t请输入班级:";       cin>>cclass;        cout<<"\t请输入离散成绩:";   cin>>lisan;        cout<<"\t请输入高数成绩:";   cin>>gaoshu;        cout<<"\t请输入电路成绩:";   cin>>dianlu;        sum=lisan+gaoshu+dianlu;    }    /*------------------------------show函数------------------------*/    void show()    {        cout<<"姓名:"<<name<<endl;        cout<<"学号:"<<num<<endl;        cout<<"班级:"<<cclass<<endl;        cout<<"离散:"<<lisan<<endl;        cout<<"高数:"<<gaoshu<<endl;        cout<<"电路"<<dianlu<<endl;        cout<<"总成绩"<<sum<<endl;    }};/*------------------------------创建类------------------------------*/class Message{public:    Message(){};    ~Message(){};    Student stu[20];    void menu();    void add();    void display();    int sname(string x);    int snum(string y);    void find();    void change();    void sort();    void dele();};/*------------------------------菜单------------------------------*/void Message::menu(){    cout<<"--------------*班级成绩管理系统*--------------"<<endl;    cout<<"--------------*$1. 增加学生成绩*--------------"<<endl;    cout<<"--------------*$2. 显示学生成绩*--------------"<<endl;    cout<<"--------------*$3. 更改学生成绩*--------------"<<endl;    cout<<"--------------*$4. 排序学生成绩*--------------"<<endl;    cout<<"--------------*$5. 查找学生成绩*--------------"<<endl;    cout<<"--------------*$6. 删除学生成绩*--------------"<<endl;    cout<<"--------------*$7. 退出成绩系统*--------------"<<endl;}/*------------------------------添加数据------------------------------*/void Message::add(){    stu[n++].input();    cout<<"添加成功!输入任意字符继续:";    getch();}/*------------------------------显示数据------------------------------*/void Message::display(){    for(int x=0;x<n;x++)    stu[x].show();    cout<<"输入任意字符继续:";    getch();}/*------------------------------查找函数------------------------------*/int Message::sname(string na){    int i;    for(i=0;i<n;i++)    {        if(stu[i].name==na)           return i;    }    return -1;}int Message::snum(string nu){    int i;    for(i=0;i<n;i++)    {        if(stu[i].num==nu)           return i;    }    return -1;}void Message::find(){    int a;    int z;    string ap,bp;    cout<<"请选择查找方式:1.按学号查找"<<endl;    cout<<"                2.按姓名查找"<<endl;    cout<<"请输入1或2:";    cin>>a;    switch(a)    {    case 1:{        cout<<"请输入需查找学生的学号:";        cin>>bp;        z=snum(bp);        if(z!=-1)        stu[z].show();        else        cout<<"没有找到该学生"<<endl;        cout<<"输入任意字符继续"<<endl;        getch();        break;    }    case 2:{        cout<<"请输入需查找学生的姓名:";        cin>>ap;        z=sname(ap);        if(z!=-1)        stu[z].show();        else        cout<<"没有找到该学生"<<endl;        cout<<"输入任意字符继续"<<endl;        getch();        break;    }    }}/*------------------------------更改数据------------------------------*/void Message::change(){    int k;    string cp;    cout<<"请输入需修改学生学号:";    cin>>cp;    k=snum(cp);    if(k!=-1)    {cout<<"已找到,请输入新的信息。"<<endl;    stu[k].input();}elsecout<<"没有该生信息"<<endl;    cout<<"输入任意字符继续:";    getch();}/*------------------------------数据排序------------------------------*/void Message::sort(){    int k,j,t,flag=0;    for(j=0;j<n-1;j++){        for( k = 0; k < n-1-j; k++)       if (stu[k].sum>stu[k+1].sum)       {t=stu[k].sum;stu[k].sum=stu[k+1].sum;stu[k+1].sum=t;flag=1;}       if (flag==0)       break;    }    for( k = 0; k <n; k++ )    cout<<stu[k].sum<<endl;    cout<<"输入任意字符继续";getch();}/*------------------------------删除数据------------------------------*/void Message::dele(){    int y;    string dp;    cout<<"请输入要删除学生的学号:";    cin>>dp;    y=snum(dp);    if(y!=-1)    {    for(;y<n;y++)    {stu[y].name=stu[y+1].name;    stu[y].num=stu[y+1].num;    strcpy(stu[y].cclass,stu[y+1].cclass);    stu[y].lisan=stu[y+1].lisan;    stu[y].gaoshu=stu[y+1].gaoshu;    stu[y].dianlu=stu[y+1].dianlu;    }    n--;    }    else    cout<<"输入错误,找不到该生信息"<<endl;    cout<<"输入任意字符继续";    getch();}/*------------------------------主函数------------------------------*/int main(){    int y;    string ss="y";    Message h;    do    {    system("cls");    cout<<"====================欢迎进入班级成绩管理系统!===================="<<endl;    h.menu();    cout<<"请输入相应的阿拉伯数字:";    cin>>y;    switch(y)    {    case 1:h.add();break;    case 2:h.display();break;    case 3:h.change();break;    case 4:h.sort();break;    case 5:h.find();break;    case 6:h.dele();break;    case 7:ss="n";break;    }}while(ss=="y");    return 0;}


原创粉丝点击