学生成绩与奖学金评定系统代码.doc
文本预览下载声明
#includeiostream
#includeiomanip
#includefstream
#includestring
using namespace std;
#define max 100;
class student
{
public:
student *next;
public:
string name; //姓名
long num; //学号
string JB; //级别
string BJ; //班级
int x,y,z; //高数,C++,英语
int AA; //总分
float BB; //平均分
int PM; //排名
void play(){coutname学生的学号是:num级别:JB班级:BJ
,高数:x,C++:y,英语:z,总分:AA,平均分BB,排名PMendl;};
student(string sname,long snum,string sJB,string sBJ,int sx,int sy,int sz,int sPM)
{
name=sname;
num=snum;
JB=sJB;
BJ=sBJ;
x=sx;
y=sy;
z=sz;
PM=sPM;
}
};
class cla
{
public:
cla() //构造函数
{
stu=0; //空地址
sload(); //调用读取函数
}
~cla() //析构函数
{
student *p; //定义指针变量p指向student类
p=stu; //把stu的地址赋给p
while(p)
{
p=p-next; //p指向下一结点
delete stu; //撤销空间
stu=p; //把p的地址赋给stu
}
stu=0;
}
void sadd(); //添加
void sremove(); //删除
void samend(); //修改
void ssearch(); //查询
void ssave(); //保存
void sload(); //读取
void sscholar(); //奖学金评定
private:
student *stu; //头接点
};
void cla::sadd() //添加
{
student *q;
string name1;
long num1;
string JB1;
string BJ1;
int x1,y1,z1;
int PM1;
system(cls);
cout\n **增加的学生** \nendl;
cout请输入学生的(中间用空格间隔) endl;
cout姓名 学号 级别 班级 高数成绩 C++成绩 英语成绩 班级成绩排名endl;
cinname1num1JB1BJ1x1y1z1PM1;
q=new student(name1,num1,JB1,BJ1,x1,y1,z1,PM1); //开辟一个存放类成员数据的空间
q-next=0; //q的next是空表
q-AA=x1+y1+z1; //计算学生总分
q-BB=(x1+y1+z1)/3; //计算学生平均分
if(stu)
{
student *t; //定义对象指针
t=stu; //把stu地址赋给t
if(t-num==num1) //输入重复
{
cout学号已存在,请重新输入endl;
显示全部