版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、生选修课管理系统-C+课程设计精品文档收集于网络,如有侵权请联系管理员删除#include#include#include#include#include/usingnamespacestd;constintcount=3;classsituaction;classstudentpublic:intsno;charsname20;charsex3;intage;chardepart20;charclassno20;charlianx40;/public:friendvoidsselect();friendvoidsupdate();friendvoidsdelet();friendvoidsa
2、ccount();friendvoidsdisplay();friendistream&operator(istream&in,student&stu)instu.snostu.snamestu.sexstu.agestu.departstu.classnostu.lianx;returnin;friendostream&operator(ostream&out,student&stu)outstu.snostu.snamestu.sexstu.agestu.departstu.classnostu.lianxendl;returnout;friendvoidxkadd();friendvoi
3、dsadd();voidsadd()while(1)intflag1=0;students;cout请输入要添加的学生的学号、姓名、性别、年龄、系别、班级、联系方式s;ifstreamin(e:studenfile.txt);if(!in)cout打开学生信息文件失败!endl;return;studentstu;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
4、该学生已经在文件中存在不允许添加!endl;elseofstreamout(e:studenfile.txt,ios二app);out.write(char*)&s,sizeof(student);out.close();system(pause);break;voidsselect()while(1)system(cls);cout*请选择要查询的类别:*endl;cout*按学生学号请按1:*endl;cout*按学生姓名请按2:*endl;cout*按学生系别请按3:*endl;cout*按学生班级请按4:*endl;cout*返回上一级界面请按5:*sn;while(sn5|sn1)c
5、out选择的数据无效,请重新输入:sn;coutendl;ifstreamin(e:studentfile.txt);if(!in)cout打开学生信息文件失败!endl;return;intflag=0;switch(sn)intno;cout请输入要查询白学生的学号no;studentstu;in.read(char*)&stu,sizeof(student);while(!in.eof()if(no=stu.sno)coutstuendl;flag=1;in.read(char*)&stu,sizeof(student);break;charname20;cout请输入要查询白学生的姓名
6、name;studentstu;in.read(char*)&stu,sizeof(student);while(!in.eof()if(strcpy(name,stu.sname)=0)coutstuendl;flag=1;in.read(char*)&stu,sizeof(student);break;chardep20;cout请输入要查询白学生的系别dep;studentstu;in.read(char*)&stu,sizeof(student);while(!in.eof()if(strcmp(dep,stu.depart)=0)coutstuendl;flag=1;in.read(
7、char*)&stu,sizeof(student);break;charclno20;cout请输入要查询白学生的班级clno;studentstu;in.read(char*)&stu,sizeof(student);while(!in.eof()if(strcmp(clno,stu.classno)=0)coutstuendl;flag=1;in.read(char*)&stu,sizeof(student);break;return;in.close();if(flag=0)cout”要查询的学生在文件不存在!endl;system(pause);voidsupdate()while(
8、1)system(cls);cout*请选择按下列类别查询后修改:*endl;cout*按学生学号请按1:*endl;cout*按学生姓名请按2:*endl;cout*按学生系别请按3:*endl;cout*按学生班级请按4:*endl;cout*返回上一级界面请按5:*sn;while(sn5|sn1)cout选择的数据无效,请重新输入:sn;coutendl;fstreamin(e:studenfile.txt,ios:in|ios:out);if(!in)cout打开学生信息文件失败!endl;return;intflag=0;switch(sn)intno;cout请输入要查询白学生的
9、学号no;studentstu;inti=0;in.seekg(i*sizeof(student),ios二beg);in.read(char*)&stu,sizeof(student);while(!in.eof()if(no=stu.sno)coutstuendl;cout青输入要修改的学生的学号、姓名、性别、年龄、系别、班级、联系方式“stu;in.seekp(i*sizeof(student),ios二beg);in.write(char*)&stu,sizeof(student);flag=1;i+;in.seekg(i*sizeof(student),ios二beg);in.rea
10、d(char*)&stu,sizeof(student);break;return;in.close();if(flag=0)cout”要修改的学生在文件不存在!endl;system(pause);voidsdelet()while(1)system(cls);cout*请选择按下歹U类别查询后删除:*endl;cout*按学生学号请按1:*endl;cout*按学生姓名请按2:*endl;cout*按学生系别请按3:*endl;cout*按学生班级请按4:*endl;cout*返回级界面请按5:*sn;while(sn5|sn1)cout选择的数据无效,请重新输入:sn;coutendl;
11、studentstu20;intflag=0;switch(sn)ifstreamin(e:studenfile.txt);if(!in)cout打开学生信息文件失败!endl;return;intn=0;in.read(char*)&stun,sizeof(student);while(!in.eof()n+;in.read(char*)&stun,sizeof(student);in.close();intno;cout请输入要删除白学生的学号no;for(inti=0;in;i+)if(no=stui.sno)coutstuiendl;cout是否要删除该学生的信息!ch;if(ch=Y
12、|ch=y)for(intj=i;jn;j+)stuj=stuj+1;n-;flag=1;if(flag=0)cout”要修改的学生在文件不存在!endl;elseofstreamout(e:studenfile.txt);if(!out)cout打开学生信息文件失败!endl;return;for(intk=0;kn;k+)out.seekp(k*sizeof(student),ios二beg);out.whte(char*)&stuk,sizeof(student);out.close();break;return;system(pause);voidsaccount()ifstreami
13、fs(e:studentfile.txt);if(!ifs)cout打开文件失败!;system(pause);return;inti=0;students;ifs.read(char*)&s,sizeof(student);while(!ifs.eof()i+;ifs.read(char*)&s,sizeof(student);ifs.close();cout学生:i人endl;ifs.close();system(pause);voidsdisplay()ifstreamin(e:studentfile.txt,ios:in);if(!in)cout打开学生信息文件失败!endl;retu
14、rn;studentstu;in.read(char*)&stu,sizeof(student);while(!in.eof()coutstu(istream&in,course&cou)amecou.cxzcou.zxscou.xfcou.kcxqcou.xxrs;returnin;)friendostream&operator(ostream&out,course&cou)amecou.cxzcou.zxscou.xfcou.kcxqcou.xxrsendl;returnout;)friendvoidxkadd(););voidcadd()intflag1=0;coursec;cout请输
15、入要添加的课程的课程代码、课程名称、课程性质、总学时、学分、开课学期、选修人数“c;ifstreamin(e:coursefile.txt);if(!in)cout打开课程信息文件失败!endl;return;coursecou;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;elseofstreamout(e:coursefile.txt,
16、ios二app);out.write(char*)&c,sizeof(course);out.close();system(pause);voidcselect()while(1)system(cls);cout*请选择要查询的类别:*endl;cout*按课程编号请按1:*endl;cout*按课程名称请按2:*endl;cout*返回上一级界面请按3:*sn;while(sn3|sn1)cout选择的数据无效,请重新输入:sn;coutendl;ifstreamin(e:coursefile.txt);if(!in)cout打开课程信息文件失败!endl;return;intflag=0;
17、switch(sn)intno;cout请输入要查询白课程的编号no;courseke;in.read(char*)&ke,sizeof(course);while(!in.eof()if(no=o)coutkeendl;flag=1;in.read(char*)&ke,sizeof(course);/if(no=ke.char*)&ke,sizeof(course);break;charname25;cout请输入要查询白课程的名称name;courseke;in.read(char*)&ke,sizeof(course);while(!in.eof()if(strcpy(name,ame)
18、=0)coutkeendl;flag=1;in.read(char*)&ke,sizeof(course);break;return;in.close();if(flag=0)cout”要查询的课程在文件不存在!endl;system(pause);voidcupdate()while(1)system(cls);cout*请选择按卜列类别查询后修改:*endi;cout*按课程编号请按1:*endl;cout*按课程名称请按2:*endl;cout*按课程性质请按3:*endl;cout*按课程学分请按4:*endl;cout*返回上-级界面请按5:*sn;while(sn5|sn1)cou
19、t选择的数据无效,请重新输入:sn;coutendl;fstreamin(e:studenfile.txt,ios:in|ios:out);if(!in)cout打开课程信息文件失败!endl;return;intflag=0;switch(sn)intno;cout请输入要查询白课程的编号no;coursek;inti=0;in.seekg(i*sizeof(course),ios:beg);in.read(char*)&k,sizeof(course);while(!in.eof()if(no=o)coutkendl;质,学分cout青输入要修改的课程的编号,名称,k;in.seekp(i
20、*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;intno;cout请输入要查询白学生的学号no;studentstu;inti=0;in.seekg(i*sizeof(student),ios二beg);in.read(char*)&stu,sizeof(student);endl;while(!in.eof()if(no=stu.sno)coutstuendl
21、;coutstu;in.seekp(i*sizeof(student),ios二beg);in.write(char*)&stu,sizeof(student);flag=1;i+;in.seekg(i*sizeof(student),ios二beg);in.read(char*)&stu,sizeof(student);break;case3:return;in.close();if(flag=0)cout”要修改的选课信息在文件不存在!endl;system(pause);voidcdelet()while(1)system(cls);cout*请选择按下列类别查询后删除:*endi;co
22、ut*按课程编号请按1:*endl;cout*按课程名称请按2:*endl;cout*返回上一级界面请按3:*sn;while(sn3|sn1)cout选择的数据无效,请重新输入:sn;coutendl;coursek20;intflag=0;switch(sn)case1:ifstreamin(e:coursefile.txt);if(!in)cout打开课程信息文件失败!endl;return;intn=0;in.read(char*)&kn,sizeof(course);while(!in.eof()n+;in.read(char*)&kn,sizeof(course);in.close
23、();intno;cout请输入要删除白课程的编号no;for(inti=0;in;i+)if(no=o)coutkiendl;cout是否要删除该课程的信息!ch;if(ch=Y|ch=y)for(intj=i;jn;j+)kj=kj+1;n-;flag=1;if(flag=0)cout”要修改的课程在文件不存在!endl;elseofstreamout(e:coursefile.txt);if(!out)cout,打开课程信息文件失败!endl;return;for(inti=0;in;i+)out.seekp(i*sizeof(course),ios二beg);out.write(cha
24、r*)&ki,sizeof(course);out.close();break;case5:return;system(pause);voidcaccount()ifstreamifs(d:coursefile.txt);if(!ifs)cout打开文件失败!;system(pause);return;inti=0;courseke;ifs.read(char*)&ke,sizeof(course);while(!ifs.eof()i+;ifs.read(char*)&ke,sizeof(course);ifs.close();cout课程:i门endl;ifs.close();system(
25、pause);voidcdisplay()ifstreamin(e:coursefile.txt);if(!in)cout打开课程信息文件失败!endl;return;coursecou;in.read(char*)&cou,sizeof(course);while(!in.eof()cout(istream&in,situaction&si)o;si.score=0;returnin;friendostream&operator(ostream&out,situaction&si)osi.scoreendl;returnout;;voidxkadd()situactionxk;cout请输入
26、要选修的学号、课程号xk;intflag1=0,flag2=0;ifstreamin1(e:studentfile.txt);if(!in1)cout打开学生信息文件失败!endl;return;studentstu;in1.read(char*)&stu,sizeof(student);while(!in1.eof()if(xk.sno=stu.sno)flag1=1;break;in1.read(char*)&stu,sizeof(student);in1.close();if(flag1=0)cout该学生不存在不允许选课!endl;elsecoursecou;ifstreamin2(e
27、:coursefile.txt);if(!in2)cout打开课程文件失败!endl;return;in2.read(char*)&cou,sizeof(course);while(!in2.eof()if(o=o)flag2=1;break;in2.read(char*)&cou,sizeof(course);in2.close();if(flag2=0)cout”该课程不存在不允许选课!endl;elsesituactionsi;intscount=0,ccount=0;ifstreamin3(e:situationfile.txt);if(!in3)cout,打开选课文件失败!endl;
28、return;in3.read(char*)&si,sizeof(situaction);while(!in3.eof()if(xk.sno=si.sno)ccount+;if(o=o)scount+;in3.read(char*)&si,sizeof(situaction);in3.close();if(cou.xxrs=scount)cout该课程人数已满不允许选课!endl;elseif(count=ccount)cout修学生已选满count不允许选课!endl;elseofstreamout(e:situactionfile.txt,ios二app);out.whte(char*)&
29、xk,sizeof(situaction);out.close();system(pause);voidxkselect()while(1)system(cls);cout”*请选择要查询的类别:*endl;cout*按学生编号请按1:*IIendl;cout*按课程编号请按2:*endl;cout*返回上一级界面请按3:*sn;while(sn3|sn1)cout选择的数据无效,请重新输入:sn;coutendl;ifstreamin(e:situactionfile.txt);if(!in)cout打开选课信息文件失败!endl;return;intflag=0;switch(sn)int
30、no;cout请输入要查询白学生的学号no;situactionstu;in.read(char*)&stu,sizeof(situaction);while(!in.eof()if(no=stu.sno)coutstuendl;flag=1;in.read(char*)&stu,sizeof(situaction);break;intno;cout请输入要查询白课程的编号no;situactionke;in.read(char*)&ke,sizeof(situaction);while(!in.eof()if(no=o)coutkeendl;flag=1;in.read(char*)&ke,
31、sizeof(situaction);/if(no=ke.char*)&ke,sizeof(course);break;return;in.close();if(flag=0)cout”要查询的选课在文件不存在!endl;system(pause);voidxkupdate()while(1)system(cls);cout*请选择按下列类别查询后修改:*endl,cout*按课程编号请按1:*endl;cout*按学生学号请按2:*endl;cout*返回上一级界面请按3:*sn;while(sn3|sn1)cout选择的数据无效,请重新输入:sn;coutendl;fstreamin(e:
32、situactionfile.txt,ios:in|ios:out);if(!in)cout打开选课信息文件失败!endl;return;intflag=0;switch(sn)intno;cout请输入要查询白课程的编号no;situactionsi;inti=0;in.seekg(i*sizeof(situaction),ios二beg);in.read(char*)&si,sizeof(situaction);while(!in.eof()if(no=o)coutsiendl;cout青输入要修改的选课信息的学生学号,选课信息成绩si;in.seekp(i*sizeof(situacti
33、on),ios二beg);in.whte(char*)&si,sizeof(situaction);flag=1;i+;in.seekg(i*sizeof(situaction),ios二beg);in.read(char*)&si,sizeof(situaction);break;intno;cout请输入要查询白学生的学号no;studentstu;inti=0;in.seekg(i*sizeof(student),ios二beg);in.read(char*)&stu,sizeof(student);while(!in.eof()if(no=stu.sno)coutstuendl;cou
34、t青输入要修改的选课信息的学生学号,选课信息成绩stu;in.seekp(i*sizeof(situaction),ios二beg);in.write(char*)&stu,sizeof(situaction);flag=1;i+;in.seekg(i*sizeof(situaction),ios二beg);in.read(char*)&stu,sizeof(situaction);break;return;in.close();if(flag=0)cout”要修改的课程在文件不存在!endl;system(pause);voidxkdelet()while(1)system(cls);cou
35、t*请选择类别查询BU除:*endl;cout*按学生学号请按1:*endl;cout*按课程编号请按2:*endl;cout*返回级界面请按3:*sn;while(sn3|sn1)cout选择的数据无效,请重新输入:sn;coutendl;studentstu20;coursek20;intflag=0;switch(sn)ifstreamin(e:situactionfile.txt);if(!in)cout打开学生信息文件失败!endl;return;intn=0;in.read(char*)&stun,sizeof(student);while(!in.eof()n+;in.read(
36、char*)&stun,sizeof(student);in.close();intno;cout请输入要删除白学生的学号no;for(inti=0;in;i+)if(no=stui.sno)coutstuiendl;cout是否要删除该学生的选课信息!ch;if(ch=Y|ch=y)for(intj=i;jn;j+)stuj=stuj+1;n-;flag=1;if(flag=0)cout”要修改的学生在文件不存在!endl;elseofstreamout(e:studenfile.txt);if(!out)cout打开学生信息文件失败!endl;return;for(intk=0;kn;k+
37、)out.seekp(k*sizeof(student),ios二beg);out.write(char*)&stuk,sizeof(student);out.close();break;ifstreamin(e:situactionfile.txt);if(!in)cout打开课程信息文件失败!endl;return;intn=0;in.read(char*)&kn,sizeof(course);while(!in.eof()n+;in.read(char*)&kn,sizeof(course);in.close();intno;cout请输入要删除白课程的编号no;for(inti=0;i
38、n;i+)if(no=o)coutkiendl;cout是否要删除该课程的信息!ch;if(ch=Y|ch=y)for(intj=i;jn;j+)kj=kj+1;n-;flag=1;if(flag=0)cout”要修改的课程在文件不存在!endl;elseofstreamout(e:coursefile.txt);if(!out)cout,打开课程信息文件失败!endl;return;for(inti=0;in;i+)out.seekp(i*sizeof(course),ios二beg);out.write(char*)&ki,sizeof(course);out.close();break;
39、system(pause);voidxkaccount()ifstreamofs(e:situactionfile.txt);if(!ofs)cout打开文件失败!;system(pause);return;inti=0;intsn=0,sscore=0;intcn=0,cscore=0;intsno;cout输入要统计的学生编号sno;intcno;cout输入要统计的课程编号cno;situactionsi;ofs.read(char*)&si,sizeof(situaction);while(!ofs.eof()if(si.sno=sno)sn+;sscore+=si.score;if(
40、o=cno)cn+;cscore+=si.score;ofs.read(char*)&si,sizeof(situaction);ofs.close();coutsno同学已经选课:sn门其平均成绩:(float)sscore/snendl;coutcno门课程已经选课:cn人该课程的平均成绩:(float)cscore/cnendl;ofs.close();system(pause);voidxkdisplay()ifstreamin(e:situactionfile.txt);if(!in)cout打开课程信息文件失败!endl;return;situactionsi;in.read(ch
41、ar*)&si,sizeof(situaction);while(!in.eof()coutsi;in.read(char*)&si,sizeof(situaction);in.close();system(pause);voidaddmenu()while(1)system(cls);cout*请选修要添力口信息的类别:*endl;cout*学生信息添加请按1:*endl;cout*课程信息添加请按2:*endcout*选课信息添加请按3:*endcout*返回主界面请按4:*sn;while(sn4|sn1)cout选择的数据无效,请重新输入:sn;coutendl;switch(sn)s
42、add();break;cadd();break;xkadd();break;return;system(pause);voidselectmenu()while(1)system(cls);cout*请选修要查询信息的类别:*endi;cout*学生信息查询请按1:*endi;cout*课程信息查询请按2:*endcout*选课信息查询请按3:*endcout*返回主界面请按4:*sn;while(sn4|sn1)cout选择的数据无效,请重新输入:sn;coutendl;switch(sn)sselect();break;cselect();break;xkselect();break;return;system(pause);voiddeletmenu()whi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中体育篮球运球动作的数字化模拟研究课题报告教学研究课题报告
- 2025年昌吉学院马克思主义基本原理概论期末考试参考题库
- 高中化学教学中实验教学与环保意识培养研究教学研究课题报告
- 2024年河北东方学院马克思主义基本原理概论期末考试笔试题库
- 2024年呼伦贝尔学院马克思主义基本原理概论期末考试真题汇编
- 2025年江苏省省级机关管理干部学院马克思主义基本原理概论期末考试笔试题库
- 2025年上海市宝山区业余大学马克思主义基本原理概论期末考试笔试真题汇编
- 2025年长沙民政职业技术学院马克思主义基本原理概论期末考试真题汇编
- 2024年天津职业技术师范大学马克思主义基本原理概论期末考试真题汇编
- 2025年晋城职业技术学院马克思主义基本原理概论期末考试参考题库
- 滴滴出行网约车加盟合作协议
- 广东工业大学《嵌入式系统软件设计A》2023-2024学年第二学期期末试卷
- 会议推广费合同范本
- 提高路缘石安装施工一次合格率
- 湖北省孝感市汉川市2023-2024学年八年级上学期期末考试数学试卷(含解析)
- 工程质量保证书范本保证书
- 2024年东北大学马克思主义基本原理概论(期末考试题+答案)1
- 小市政施工方案样本
- 剧场工作总结
- GB/T 42765-2023保安服务管理体系要求及使用指南
- 2023版设备管理体系标准
评论
0/150
提交评论