文档详情

C 学生成绩管理系统代码大全.doc

发布:2018-07-09约4.14万字共46页下载文档
文本预览下载声明
代码: /* *学生成绩管理系统 *类:Student Score Manage *可保存学科:语文 数学 英语 *时间段:大一至大四 *说明:该程序针对学生数较少的情况,假如面对上千上万的学生数,应该再将其中的存储结构进行改变, * 分别分层次存储,例如大一至大四四个链表表头,在每一个链表中又根据不同分类依据细分, * 例如根据学院、专业等,这样的改变将大大有利于程序进行的寻找、输出、排序等涉及链表的操作, * 当然相应代码也要稍作改变 */ #includeiostream #includestring #includefstream #includesstream #includeiomanip #includeconio.h #includewindows.h #includevector using namespace std; #define CONOBJ 3 //3科科目 #define YEARS 4 //4个学年 #define SET 4 //4个设置要求 class Score{ public: int score[CONOBJ]; //chinese,math,english三科目分别对应order[0]、order[1]、order[2],每个学期两次考试,分为期中和期末考试 int order[CONOBJ]; //MAX科学科排名 int ConOrder; //总排名 Score *next; //定义在学生类当中 Score(){ next=NULL; int i; for(i=0;iCONOBJ;i++){ score[i]=0; order[i]=0; } ConOrder=0; };//无参构造函数 Score(int *sc){ next=NULL; int i; for(i=0;iCONOBJ;i++){ score[i]=*sc; order[i]=0; sc++; } ConOrder=0; }//只有成绩的构造函数 Score(int *sc,int*or,int Con){ next=NULL; int j; for(j=0;jCONOBJ;j++){ score[j]=*sc; order[j]=*or; sc++; or++; } ConOrder=Con; }//含全部参数的构造函数 int ReturnConScore(){ //返回总分数 return score[0]+score[1]+score[2]; } }; //=========================================================== class Student{ /*Student类中包含Score类 *用来存储众多的成绩,每个学期两次成绩, 每学年两个学期*/ Score *sco; string name; string pro; //专业 int clas; int grade; string num; char sex; Student* next; public: /* *几个不同参数的Student构造函数的重载, *分别对应不同形式的构造方式 */ Student(string iname):name(iname),next(NULL){ sco=NULL; cout\t\t\t\t★成功添加学生name★\n; }//1.单参数时的构造函数 Student(string iname=No name,string ipro=none,int iclass=0,int igrade=0,string inum=0,char isex=n) :name(iname),num(inum),sex(isex),next(NULL),pro(ipro),clas(iclass),grade(igrade){ sco=NULL; cout\t\t\t\t★成功添加学生name★\n; return; }//2.用于添加无输入成绩的构造函数 Student(string iname,string ipro,int iclas,int igrade,string inum,char isex,int *score) :name(iname),pro(ipro),clas(iclas),grade(igrade),num(
显示全部
相似文档