版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<iostream.h> #include<string.h>#include<fstream.h>#include <stdlib.h>#include <time.h>/using namespace std;const int count =3;class situaction;class student public: int sno; char sname20; char sex3; int age; char depart20; char classno20; char lianx40; /public:
2、friend void sselect(); friend void supdate(); friend void sdelet(); friend void saccount(); friend void sdisplay(); friend istream & operator >> (istream & in,student &stu) in>>stu.sno>>stu.sname>>stu.sex>>stu.age>>stu.depart>>stu.classno>>
3、stu.lianx; return in; friend ostream & operator<< ( ostream & out,student &stu) out<<stu.sno<<" "<<stu.sname<<" "<<stu.sex<<" "<<stu.age<<" "<<stu.depart<<" "<<stu.cl
4、assno<<" "<<stu.lianx<<endl; return out; friend void xkadd(); friend void sadd();void sadd() while(1)int flag1=0; student s; cout<<"请输入要添加的学生的学号、姓名、性别、年龄、系别、班级、联系方式"<<endl; cin>>s; ifstream in("e:studentfile.txt"); if(!in) cout<<
5、;"打开学生信息文件失败!"<<endl; return ; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() if(s.sno=stu.sno) flag1=1; break; in.read(char*)&stu,sizeof(student); in.close(); if(flag1=1) cout<<"该学生已经在文件中存在不允许添加!" <<endl; else ofstream out("e:stud
6、entfile.txt",ios:app); out.write(char*)&s,sizeof(student); out.close(); system("pause"); break;void sselect() while(1) system("cls"); cout<<"*请选择要查询的类别:*"<<endl; cout<<"* 按学生学号 请按1:* "<<endl; cout<<"* 按学生姓名 请按2:*&quo
7、t;<<endl; cout<<"* 按学生系别 请按3:*"<<endl; cout<<"* 按学生班级 请按4:*"<<endl; cout<<"* 返回上一级界面 请按5:*"<<endl; int sn; cin>>sn; while(sn>5|sn<1) cout<<"选择的数据无效,请重新输入:"<<endl; cin>>sn; cout<<endl
8、; ifstream in("e:studentfile.txt"); if(!in) cout<<"打开学生信息文件失败!"<<endl; return ; int flag=0; switch(sn) case 1: int no; cout<<"请输入要查询的学生的学号"<<endl; cin>>no; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() if(no=stu.sno)
9、cout<<stu<<endl; flag=1; in.read(char*)&stu,sizeof(student); break; case 2: char name20; cout<<"请输入要查询的学生的姓名"<<endl; cin>>name; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() if(strcpy(name,stu.sname)=0) cout<<stu<<endl; f
10、lag=1; in.read(char*)&stu,sizeof(student); break; case 3: char dep20; cout<<"请输入要查询的学生的系别"<<endl; cin>>dep; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() if(strcmp(dep,stu.depart)=0) cout<<stu<<endl; flag=1; in.read(char*)&stu,si
11、zeof(student); break; case 4: char clno20; cout<<"请输入要查询的学生的班级"<<endl; cin>>clno; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() if(strcmp(clno,stu.classno)=0) cout<<stu<<endl; flag=1; in.read(char*)&stu,sizeof(student); break; case 5
12、: return ; in.close(); if(flag=0) cout<<"要查询的学生在文件不存在!" <<endl; system("pause"); void supdate() while(1) system("cls"); cout<<"*请选择按下列类别查询后修改:*"<<endl; cout<<"* 按学生学号 请按1:* "<<endl; cout<<"* 按学生姓名 请按2:*&
13、quot;<<endl; cout<<"* 按学生系别 请按3:*"<<endl; cout<<"* 按学生班级 请按4:*"<<endl; cout<<"* 返回上一级界面 请按5:*"<<endl; int sn; cin>>sn; while(sn>5|sn<1) cout<<"选择的数据无效,请重新输入:"<<endl; cin>>sn; cout<<e
14、ndl; fstream in("e:studentfile.txt",ios:in|ios:out); if(!in) cout<<"打开学生信息文件失败!"<<endl; return ; int flag=0; switch(sn) case 1: int no; cout<<"请输入要查询的学生的学号"<<endl; cin>>no; student stu; int i=0; in.seekg(i*sizeof(student),ios:beg); in.read(
15、char*)&stu,sizeof(student); while(!in.eof() if(no=stu.sno) cout<<stu<<endl; cout<<"请输入要修改的学生的学号、姓名、性别、年龄、系别、班级、联系方式"<<endl; cin>>stu; in.seekp(i*sizeof(student),ios:beg); in.write(char*)&stu,sizeof(student); flag=1; i+; in.seekg(i*sizeof(student),ios:b
16、eg); in.read(char*)&stu,sizeof(student); break; case 2: case 3: case 4: case 5: return ; in.close(); if(flag=0) cout<<"要修改的学生在文件不存在!" <<endl; system("pause"); void sdelet() while(1) system("cls"); cout<<"*请选择按下列类别查询后删除:*"<<endl; cou
17、t<<"* 按学生学号 请按1:* "<<endl; cout<<"* 按学生姓名 请按2:*"<<endl; cout<<"* 按学生系别 请按3:*"<<endl; cout<<"* 按学生班级 请按4:*"<<endl; cout<<"* 返回上一级界面 请按5:*"<<endl; int sn; cin>>sn; while(sn>5|sn<1)
18、 cout<<"选择的数据无效,请重新输入:"<<endl; cin>>sn; cout<<endl; student stu20; int flag=0; switch(sn) case 1: ifstream in("e:studentfile.txt"); if(!in) cout<<"打开学生信息文件失败!"<<endl; return ; int n=0; in.read(char*)&stun,sizeof(student); while(!i
19、n.eof() n+; in.read(char*)&stun,sizeof(student); in.close(); int no; cout<<"请输入要删除的学生的学号"<<endl; cin>>no; for(int i=0;i<n;i+) if(no=stui.sno) cout<<stui<<endl; cout<<"是否要删除该学生的信息!"<<endl; char ch; cin>>ch; if( ch='Y'|
20、ch='y') for(int j=i;j<n;j+) stuj=stuj+1; n-; flag=1; if(flag=0) cout<<"要修改的学生在文件不存在!" <<endl; else ofstream out("e:studentfile.txt"); if(!out) cout<<"打开学生信息文件失败!"<<endl; return ; for(int k=0;k<n;k+) out.seekp(k*sizeof(student),ios:b
21、eg); out.write(char*)&stuk,sizeof(student); out.close(); break; case 2: case 3: case 4: case 5: return ; system("pause"); void saccount() ifstream ifs("e:studentfile.txt"); if(!ifs) cout<<"打开文件失败!" system("pause"); return ; int i=0; student s; ifs.re
22、ad(char*)&s,sizeof(student); while(!ifs.eof() i+; ifs.read(char*)&s,sizeof(student); ifs.close(); cout<<"学生:"<<i<<"人"<<endl; ifs.close(); system("pause"); void sdisplay() ifstream in("e:studentfile.txt",ios:in); if(!in) cout<
23、<"打开学生信息文件失败!"<<endl; return ; student stu; in.read(char*)&stu,sizeof(student); while(!in.eof() cout<<stu<<endl; in.read(char*)&stu,sizeof(student); in.close(); system("pause"); class course public:int cno; char cname20; char cxz10; int zxs; int xf; c
24、har kcxq10; int xxrs; /public: friend void cadd(); friend void cselect(); friend void cupdate(); friend void cdelet(); friend void caccount(); friend void cdisplay(); friend istream & operator >> (istream & in, course &cou) in>>o>>ame>>cou.cxz>>cou.zxs>&g
25、t;cou.xf>>cou.kcxq>>cou.xxrs; return in; friend ostream & operator <<(ostream & out,course &cou) out<<o<<" "<<ame<<" "<<cou.cxz<<" "<<cou.zxs<<" "<<cou.xf<<" "&
26、lt;<cou.kcxq<<" "<<cou.xxrs<<endl; return out; friend void xkadd();void cadd() int flag1=0; course c; cout<<"请输入要添加的课程的课程代码、课程名称、课程性质、总学时、学分、开课学期、选修人数"<<endl; cin>>c; ifstream in("e:coursefile.txt"); if(!in) cout<<"打开课程信
27、息文件失败!"<<endl; return ; course cou; in.read(char*)&cou,sizeof(course); while(!in.eof() if(o=o) flag1=1; break; in.read(char*)&cou,sizeof( course); in.close(); if(flag1=1) cout<<"该课程已经在文件中存在不允许添加!" <<endl; else ofstream out("e:coursefile.txt",ios:app
28、); out.write(char*)&c,sizeof(course); out.close(); system("pause"); void cselect()while(1) system("cls"); cout<<"* 请选择要查询的类别:*"<<endl; cout<<"* 按课程编号 请按1:* "<<endl; cout<<"* 按课程名称 请按2:*"<<endl; cout<<&quo
29、t;* 返回上一级界面 请按3:*"<<endl; int sn; cin>>sn; while(sn>3|sn<1) cout<<"选择的数据无效,请重新输入:"<<endl; cin>>sn; cout<<endl; ifstream in("e:coursefile.txt"); if(!in) cout<<"打开课程信息文件失败!"<<endl; return ; int flag=0; switch(sn)
30、case 1: int no; cout<<"请输入要查询的课程的编号"<<endl; cin>>no; course ke; in.read(char*)&ke,sizeof(course); while(!in.eof() if(no=o) cout<<ke<<endl; flag=1; in.read(char*)&ke,sizeof(course); /if(no=ke. char*)&ke,sizeof(course); break; case 2: char name25; co
31、ut<<"请输入要查询的课程的名称"<<endl; cin>>name; course ke; in.read(char*)&ke,sizeof(course); while(!in.eof() if(strcpy(name,ame)=0) cout<<ke<<endl; flag=1; in.read(char*)&ke,sizeof(course); break; case 3: return ; in.close(); if(flag=0) cout<<"要查询的课程在文
32、件不存在!" <<endl; system("pause");void cupdate() while(1) system("cls"); cout<<"*请选择按下列类别查询后修改:*"<<endl; cout<<"* 按课程编号 请按1:* "<<endl; cout<<"* 按课程名称 请按2:*"<<endl; cout<<"* 按课程性质 请按3:*"<&
33、lt;endl; cout<<"* 按课程学分 请按4:*"<<endl; cout<<"* 返回上一级界面 请按5:*"<<endl; int sn; cin>>sn; while(sn>5|sn<1) cout<<"选择的数据无效,请重新输入:"<<endl; cin>>sn; cout<<endl; fstream in("e:studentfile.txt",ios:in|ios:out)
34、; if(!in) cout<<"打开课程信息文件失败!"<<endl; return ; int flag=0; switch(sn) case 1: int no; cout<<"请输入要查询的课程的编号"<<endl; cin>>no; course k; int i=0; in.seekg(i*sizeof(course),ios:beg); in.read(char*)&k,sizeof(course); while(!in.eof() if(no=o) cout<<
35、;k<<endl; cout<<"请输入要修改的课程的编号,名称,性质,学分"<<endl; cin>>k; in.seekp(i*sizeof(course),ios:beg); in.write(char*)&k,sizeof(course); flag=1; i+; in.seekg(i*sizeof(course),ios:beg); in.read(char*)&k,sizeof(course); break; case 2: int no; cout<<"请输入要查询的学生的学号"<<endl; cin>>no; student stu; int i=0; in.seekg(i*sizeof(student),ios:beg); in.read(char*)&stu,sizeof(student); whi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年临床执业医师考前冲刺测试卷含答案详解(新)
- 某水泥厂窑炉操作安全管理制度
- 2026年劳动法培训试题(附答案)
- 中国人民解放军第五七一八工厂 2026届校园招聘备考题库带答案详解(巩固)
- 2026北京大学艺术学院招聘劳动合同制人员1人备考题库附完整答案详解(名师系列)
- 2026重庆财经学院财务处工作人员招聘1人备考题库带答案详解(突破训练)
- 2026湖南怀化市辰溪县残疾人联合会公益性岗位招聘1人备考题库含完整答案详解【夺冠系列】
- 2026重庆市铜梁区维新镇敬老院招聘1人备考题库及答案详解参考
- 2026甘肃兰州城关区《卫生职业教育》杂志社招聘备考题库及答案详解【基础+提升】
- 2026福建南平延平区南山镇招聘专职网格员1人备考题库及参考答案详解(模拟题)
- 劳务人员购买服务合同范本
- 九连环解法教学课件
- 参数论证管理办法
- 环保物料管理办法
- FBS-JG-008工程竣工移交书
- 支吊架结构计算与设计方案
- (高清版)DB53∕T 1359-2025 高速公路基层磷石膏应用技术规范
- 公司文印室保密管理制度
- PCS-985发变组保护培训课件
- DB14-T 3447-2025 采煤工作面采空区自然发火“三带”分布测定指南
- 中医康复宣传
评论
0/150
提交评论