欢迎来到天天文库
浏览记录
ID:55126732
大小:47.50 KB
页数:12页
时间:2020-04-28
《C++大作业:学生信息管理系统(附代码).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、学生信息管理系统(附代码)题目要求:设计一个类CStudent,类中包含一个学生的基本数据如下:编号,姓名,性别,年龄,数学成绩,计算机成绩,外语成绩。并假设编号为整数,且从1号往后连续编码;姓名为字符串,性别为字符。如:1LiPingm18899894请采用binary文件形式,并使用随机读写处理方式,对自定义CStudent类的对象数据进行存储与读写处理(即是说,总按具有连续编码的编号num为“序”来对文件中的各对象数据进行随机读写处理)。并设计该类的成员函数,而且对输出运算符“<<”进行重载,使该运算符能够完成将一个学生的信息输出到屏幕上。要
2、求成员函数完成以下功能:(1)从键盘输入一个学生的有关信息,并将它们存入到数据文件中(按编号来确定写出位置)。(2)按编号对学生信息进行检索并将检索结果显示在屏幕上。(3)按姓名对学生信息进行检索并将检索结果显示在屏幕上。(4)计算某编号学生的总成绩与平均成绩。(5)列出所有总成绩超过n分的性别为s同学的有关信息(n,s由用户从键盘输入)。Code:1./2.名称:student.cpp3.描述:学生管理程序4.功能:添加,修改,按条件查询学生信息5.环境:FedoraLinux11&GCC&x866.备注:davelv第一次Class于2010-
3、01-107.更新:新建了可复用的搜索模板searchframe8./9.10.#include11.#include12.#include13.#include14.#include15.16.usingnamespacestd;17.#defineCIN_LEN1024//缓冲区长度18.#defineFILENAME"data"//数据文件名19./////////////////////////////////////20.//结构和类//21.///
4、////////////////////////////////22.structdata//学生个人信息23.{24.intid;//学号25.charname[20];//名字26.charmajor[20];//专业27.charsex;//性别28.doublech,en,ma;//成绩29.intgrade;//年级30.};31.32.classCStudent33.{34.protected:35.boolaltered;//是否修改36.datainfo;//学生信息37.public:38.staticintnowid;//新学生
5、自增id39.staticvoiddisplayhead();//显示表头40.staticvoiddisplayshorthead();//显示短表头41.CStudent();//构造42.voiddisplayinfo();//显示全部学生信息43.voiddisplayshortinfo();//显示学生短信息44.doublegetsum();//取总成绩45.doublegetave();//取得平均分46.doublegetch();//取语文成绩47.doublegeten();//取外语成绩48.doublegetma();//取
6、数学成绩49.intset(boolisnew);//设置学生信息50.intgetgrade();//取年级51.intgetid();//取学号52.boolisaltered();//取是否修改53.chargetsex();//取性别54.chargetname();//取姓名55.chargetmajor();//取专业56.datagetinfo();//取学生全部信息57.//定义友元函数以便重载运算符58.friendostream&operator<<(ostream&,constCStudent&);59.friendistre
7、am&operator>>(istream&,CStudent&);60.61.};62.63.intCStudent::nowid=1;//初始化类静态成员64.65.CStudent::CStudent()//基类构造66.{67.info.id=CStudent::nowid++;//子增id68.strcpy(info.name,"None");//名字69.info.ch=0;//语文成绩70.info.en=0;//外语成绩71.info.ma=0;//数学成绩72.info.grade=1;//年级73.altered=false;/
8、/未被修改74.}75.76.intCStudent::getgrade()77.{78.returninfo.grade
此文档下载收益归作者所有