学生信息管理系统(面向对象设计c++)

上传人:re****.1 文档编号:552600902 上传时间:2024-02-11 格式:DOC 页数:14 大小:36.50KB
返回 下载 相关 举报
学生信息管理系统(面向对象设计c++)_第1页
第1页 / 共14页
学生信息管理系统(面向对象设计c++)_第2页
第2页 / 共14页
学生信息管理系统(面向对象设计c++)_第3页
第3页 / 共14页
学生信息管理系统(面向对象设计c++)_第4页
第4页 / 共14页
学生信息管理系统(面向对象设计c++)_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《学生信息管理系统(面向对象设计c++)》由会员分享,可在线阅读,更多相关《学生信息管理系统(面向对象设计c++)(14页珍藏版)》请在金锄头文库上搜索。

1、/*2014/05/27学生信息管理系统源码(面向对象设计c+)for act_head*/一、#ifndef _ACT_H#define _ACT_H#includestd.husing namespace std;class Actprivate:int top;/数组下表指示器Student std1000;public:void add();void display();void del();void query();Student *querybynum(long num);Student *querybyname(char name);void modif();ostream& o

2、perator( ostream& os, Student& t ) long num;string name;/!/char name50;/error!char sex,c=y;int age;int tag; num=t.getnum();name=t.getname(); sex=t.getsex();age=t.getage();tag=t.gettag();os num name sex age tag operator.istream& operator( istream& is, Student& t ) long num;char name50;char sex,c=y;in

3、t age;int tag; isnumnamesexagetag; t.setnum(num);t.setname(name);t.setsex(sex);t.setage(age);t.settag(); return is ;void Act:add()Student s,s1;long num;char name50;char sex,c=y;int age;int tag;ofstream file(std.txt,ios:app);/追加!不同于ate!打开一个输出文件用于在文件尾添加数据while(1)couts;cinnumnamesexage; s.setnum(num);s

4、.setname(name);s.setsex(sex);s.setage(age);s.settag();files;cout学生信息添加成功n;coutc;if(c=n|c=N)break;file.close();void Act:display()top=-1;Student s1000,s1;/sn,n不能太大!ifstream file(std.txt);/fstream file(d:std.txt,ios_base:out);while(1)/file.read(char*)&s,sizeof(s);/file.read(reinterpret_cast(&s),sizeof(

5、s); files1;if(!file.eof()break;/安排位置要注意,以防多输出随机数据top+;couttt第top+1个学生信息:(学号、姓名、性别、年龄、标识符)nendl;couttts1endl;stop=s1; file.close();void Act:query()int c2;Student* s;/一个临时的指针cout1 按学号来查询:endl;cout2 按姓名来查询:endl;coutc2;switch(c2)case 1:coutnum;s=querybynum(num);if(s=NULL)cout在文件中不含有该生信息.endl;elsecoutset

6、w(10)学号setw(10)姓名setw(10)性别setw(10)年龄endl;cout-tdisplay();break;case 2:coutname;s=querybyname(name);if(s=NULL)cout在文件中不含有该生信息.endl;elsecoutsetw(10)学号setw(10)姓名setw(10)性别setw(10)年龄endl;cout-tdisplay();break;default:cout输入有误!请重新输入!n;break;/根据指定学号进行查找Student *Act:querybynum(long num)int top=-1;Student

7、s;/couthehes;while(!file.eof()/file.read(char*)&s,sizeof(s); files; top+;/couts.getnum()hejooun;stdtop=s; file.close ();/coutheheendl;for(int i=0;is;if(!file)break;top+;stdtop=s; file.close();for(int i=0;i=top;i+)if(strcmp(stdi.getname(),name)=0&stdi.gettag()=0)return &stdi;return NULL;/找不到,返回一个NULL

8、值void Act:modif()long num;char name50;char sex;int age;Student* s;char yn;/y or n cout请输入要修改学生的学号: num;s=querybynum(num);if(s=NULL)cout在数据库中不含有该生信息.endl;elsecout学生的学号是否需被修改?(y/n)yn;if(yn=Y|yn=y)cout请输入学生的新学号:num;s-setnum(num);cout学生的姓名是否需被修改?(y/n)yn;if(yn=Y|yn=y)cout请输入学生的新姓名:name;s-setname(name);co

9、ut学生的性别是否需被修改?(y/n)yn;if(yn=Y|yn=y)cout请输入学生的新性别:sex;s-setsex(sex);cout学生的年龄是否需被修改?(y/n)yn;if(yn=Y|yn=y)cout请输入学生的新年龄:age;s-setage(age);cout学生信息修改完毕,修改后的信息如下:nnn;coutsetw(10)学号setw(10)姓名setw(10)性别setw(10)年龄endl;cout-tdisplay();/file*s/error!/老师,文件的输出,修改后的数据该如何输出,指针不是很会用诶 ofstream file(std.txt); for(int i=0;i=to

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 外语文库 > 英语词汇

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号