使用类和对象,建立一个简单的学生管理系统。具体要求:
声明类保存学生的基本信息:
数据成员(protected):姓名 char * name;
性别 charsex;
学号 int num[10];
成绩 float score;
年龄 int age;
构造函数 Person(char * s, char g, int a 。。。。。。。);
提示:形参分别表示:姓名,性别,年龄等,三个形参均带缺省值0,函数体中注意name的动态内存分配问题。
拷贝构造函数 Person(Person&a);
提示:注意name要用深拷贝方法。
显示信息 voidDisplay();
提示:显示人员信息,输出占一行,次序分别是: 姓名 性别 年龄 。
设置信息 voidset(char *s, char g, int a。。。。。);
提示:形参分别表示:姓名,性别,年龄等,三个形参均带缺省值0。函数体中注意name的动态内存分配问题。
复制人员信息 void copy(Person &a);
提示:函数体与拷贝构造函数的类似,但要注意该函数与拷贝构造的区别。
完成类的定义,并编写主函数对其进行测试,要求每个成员函数均要测试到。
在此基础上,在主函数中定义对象数组,包含10个学生的信息,添加以下函数:
编写一个友元函数,用来比较两个学生的成绩高低,设为类的友元函数,调用此函数对数组中所有对象按照成绩从高到低排序,并求出最高分和最低分;
编写一个类的友元函数,输出成绩对应的等级:大于等于90:优;80~90:良;70~79:中;60!69:及格;小于60:不及格。
另外你要相信自己有能力做出这题。其实它就是个数组、排序和分支判断的结合。耐心点、冷静点,你能解决它。