本文实例为大家分享了C++实现简单班级成绩管理系统的具体代码,供大家参考,具体内容如下
#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;
}
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();}
else
cout<<"没有该生信息"<<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;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。